java 类内部初始化顺序

创建对象时,先初始化类的成员变量/成员对象,再执行构造函数。

package com........test;


public class Test {
public static void main(String[] args){
House house =new House();
house.f();
}
}




class House{
Window w1 =new Window(1);
House(){
System.out.println("House()");
w3 = new Window(3);
}
Window w2 =new Window(2);
void f(){
System.out.println("f()");
}
Window w3 =new Window(3);
}
class Window{
Window(int marker){
System.out.println("Window("+marker+")");
}
}



输出结果:

Window(1)
Window(2)
Window(3)
House()
Window(3)
f()

你可能感兴趣的:(个人学习)