java public class Z extens X{ Y y=new Yjava public class Z extens X{Y y=new Y();Z(){system.out.println(“Z”);}public static void main(string args【】){Z z=new Z();}}class X{Y y=new Y();X(
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/30 10:20:42
java public class Z extens X{ Y y=new Yjava public class Z extens X{Y y=new Y();Z(){system.out.println(“Z”);}public static void main(string args【】){Z z=new Z();}}class X{Y y=new Y();X(
java public class Z extens X{ Y y=new Y
java
public class Z extens X{
Y y=new Y();
Z(){
system.out.println(“Z”);
}
public static void main(string args【】){
Z z=new Z();
}
}
class X{
Y y=new Y();
X(){
system.out.println(“X”);
}
}
class Y{
Y(){
system.out.println(“Y”);
}
}
在内存中是怎么执行的?
java public class Z extens X{ Y y=new Yjava public class Z extens X{Y y=new Y();Z(){system.out.println(“Z”);}public static void main(string args【】){Z z=new Z();}}class X{Y y=new Y();X(
随手写的代码吧,关键字也能错.
我觉得你的问题应该是问java类初始化的执行顺序.
java类初始化的顺序是:
1.静态属性
2.静态自由块
3.属性
4.自由块
6.构造方法
再加上继承关系,初始化的顺序是:
1.父类:静态属性
2.父类:静态自由块
3.子类:静态属性
4.子类:静态自由块
5.父类:属性
6.父类:自由块
7.父类:构造方法
8.子类:属性
9.子类:自由块
10.子类:构造方法