**
博主小白一枚,刚刚学习java编程思想,内容如有不对,请各路大佬们指正~~ 感谢大家!!
**
在类的内部,变量定义的先后顺序决定了初始化的顺序。
即使变量定义散布在方法定义之间,他们仍会在任何方法(包括构造器)被调用之前得到初始化
如下所示:
class Window{
Window(int marker)
{
print("window("+marker+")");
}
}
class House{
Window w1 = new Window(1); // 构造器之前
House(){
print("House()");
w3 = new Window(33); //构造器之中
}
Window w2 = new Window(2);// 构造器之后
void f(){ print("f()")}
Window w3 = new Window(3); // 最后
}
public class OrderOfInitialization(){
public static void main(String[] args){
House house = new House();
house.f();
}
}/* output
Window(1)
Window(2)
Window(3)
House()
Window(33)
f()