首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

java 沿袭类 变量、静态变量、构造函数执行顺序

2012-12-18 
java 继承类 变量、静态变量、构造函数执行顺序java?继承类?变量、静态变量、构造函数执行顺序class?C{?static

java 继承类 变量、静态变量、构造函数执行顺序
java?继承类?变量、静态变量、构造函数执行顺序class?C{
?static?int?prt(int?i){
??System.out.println(i);
??return?i;
?}
}

class?A{
?int?a=C.prt(0);
?static?int?b=C.prt(1);
?A(){
??System.out.println("constructor?of?A");
?}
}

class?B?extends?A{
?int?c=C.prt(2);
?static?int?d=C.prt(3);
?B(){
??System.out.println("constructor?of?B");
?}
?public?void?test(){
??System.out.println("begin...");
?}
}

public?class?orderTest{
?public?static?void?main(String[]?args){
??B?b=new?B();
??b.test();
?}
}

执行结果:

1
3
0
constructor?of?A
2
constructor?of?B
begin...

可以看出包含普通变量、静态变量、构造函数、继承类的执行顺序为:


1、父类的静态变量;

2、子类的静态变量;

3、父类的普通变量、父类的构造函数;

4、子类的普通变量、子类的构造函数;

5、普通方法。

热点排行