class A{
public A(){
System.out.println("A构造器");
}
}
class B{
public B(){
System.out.println("B构造器");
}
}
class C{
A a;
public C(){
a=new A();
}
B b=new B();
}
public class Test{
public static void main(String args[]){
C c=new C();
}
}
输入结果为:
B构造器
A构造器
为什么A在代码顺序B的前面。但是输出却相反呢??
因为B在加载的时候已经实例化,并不需要经过构造器。
函数外初始化先于构造函数执行
最新推荐文章于 2021-09-24 12:07:51 发布