作者: 范天成 时间: 2013-1-29 23:15
class Demo
{
public static void main(String[] args)
{
new Derived();//0
new Derived().display();//这句,输出结果是:0,22,0是Base类构造函数里的display输出的,但是这个display是Derived类里的display
//因为this 代表调用它的对象,而此时Derived类对象构造函数还没有执行,所以count是默认的0.
new Base().display();//结果2,2.第一个2是Base类的构造函数里的display输出的,第二个构造函数下面的display输出的。
}
}
class Base
{
int count =2;
public Base()
{
this.display();
}
public void display()
{
System.out.println(count);
}
}
class Derived extends Base
{
private int count =20;
public Derived()
{
count = 22;
}
public void display()
{
System.out.println(count);
}
}