这是Java代码片段。初始化类
class A{
public A() { }
public A(int i) { System.out.println(i); }
}
class B{
static A s1 = new A(1);
A a = new A(2);
public static void main(String[] args){
B b = new B();
A a = new A(3);
}
static A s2 = new A(4);
}
执行顺序如下:1,4,2,3因为类的初始化以这种方式执行。 但是如果删除了B b = new B();
对象创建,那么这是否意味着该类不会按上述顺序初始化? 最好的问候
当你尝试时发生了什么?如果你没有创建一个新的B实例*,那么这意味着什么? B是否有任何实例变量?如果您不创建B的实例,是否会创建任何B实例变量?考虑一下。 –