本帖最后由 zx0210 于 2015-9-2 02:17 编辑
class Demo
{
public static void main(String[] args)
{
Zi z=new Zi();
z.show();
}
}
class Fu
{
int num=8;
static{
System.out.println("Fu 静态代码块 run");
}
{
System.out.println("Fu 构造代码块 run num="+num);//8
num=9;
System.out.println("Fu 构造代码块 run num="+num);//9
}
public Fu(){
System.out.println("fu 构造方法 num="+num);//9
num=10;
System.out.println("fu 构造方法 num="+num);//10
show();//fu
}
public void show(){
System.out.println("fu show run");
}
}
class Zi extends Fu
{
int number=1;//显示初始化
static{
System.out.println("Zi 静态代码块 run");
}
{
System.out.println("构造代码块 number="+number);//1
number=2;
System.out.println("构造代码块 number="+number);//2
}
public Zi(){
System.out.println("zi 构造方法 number="+number);//2
number=3;
System.out.println("zi 构造方法 number="+number);//3
}
public void show(){
System.out.println("zi show number="+number);//1,2,3
}
}
我已经被成功的绕进去了,优先级,父类静态代码块>子类静态代码块>父类构造代码块>父类构造方法>子类构造代码块>子类构造方法
|
|