【发布时间】:2014-08-13 22:18:34
【问题描述】:
代码如下:
class base
{
public void abc()
{
System.out.print("what's up dude");
}
}
class derived
{
public void abc()
{
System.out.print("wad up ");
}
}
public class superreftosub
{
public static void main(String args[])
{
base b=new base();
derived d=new derived();
base b=d;
b.abc();
}
}
【问题讨论】:
-
您不会将对象分配给对象。
-
derived目前没有扩展base。您在main中声明了两个b变量。 -
你没有派生。扩展在哪里?
-
将一个对象分配给另一个只是分配对象引用(或多或少的指针)。它不会复制成员变量等。您需要阅读有关克隆的信息。从 wiki for Java clone() 的第一段开始:在 Java 中,对象是通过引用变量来操作的,并且没有用于复制对象的操作符——赋值操作符复制引用,而不是对象。 clone() 方法提供了这个缺失的功能。
标签: java oop subclass superclass