public class House {

 

 

 

 Window w1=new Window(1);

 public House() {

  // TODO Auto-generated constructor stub

 

  print("Hourse()");

  w3=new Window(33);

 }

 Window w2=new Window(2);

 public void f() {

  print("execute f() method");

 }

 Window w3=new Window(3);

 

}





public class Window {

 

 public Window(int marker) {

  // TODO Auto-generated constructor stub

  print("clinit  window("+marker+")");

 }

 

}



public class OrderOfinitialization {

 

 public static void main(String[] args) {

  House house=new House();

  house.f();

 }

}
clinit  window(1)
clinit  window(2)
clinit  window(3)
Hourse()
clinit  window(33)
execute f() method

  有几点说明

1.变量定义优先任何方法调用(包括构造器)

2.static定义的变量优先执行

3.如果一个类有父类关系,那父类的构造优先执行

 

 

 

 

 

相关文章:

  • 2021-12-20
  • 2021-11-07
  • 2022-12-23
  • 2021-09-24
  • 2021-11-19
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-11-25
  • 2022-12-23
  • 2022-12-23
  • 2021-08-09
  • 2021-11-04
  • 2022-02-13
相关资源
相似解决方案