标签:color 顺序 pac static bsp oid 创建 [] xtend
类初始化过程
1. 初始化父类的静态成员和静态代码块,按顺序执行,只执行一次;
2. 初始化子类的静态成员和静态代码块,按顺序执行,只执行一次;
3. 初始化父类的实例成员和实例代码块,按顺序执行,每次创建对象都执行一次;
4. 初始化父类的构造方法,每次创建对象都执行一次;
5. 初始化子类类的实例成员和实例代码块,按顺序执行,每次创建对象都执行一次;
6. 初始化子类的构造方法,每次创建对象都执行一次;
1 package test; 2 3 class ClassInitSuper{ 4 static { 5 System.out.println("super static init"); 6 } 7 8 { 9 System.out.println("super instance init"); 10 } 11 12 public ClassInitSuper(){ 13 System.out.println("super new init"); 14 } 15 } 16 17 18 public class ClassInit extends ClassInitSuper{ 19 20 static { 21 System.out.println("sub static init"); 22 } 23 24 { 25 System.out.println("sub instance init"); 26 } 27 28 public ClassInit(){ 29 System.out.println("sup new init"); 30 } 31 32 public static void main(String[] args) { 33 new ClassInit(); 34 new ClassInit(); 35 36 } 37 38 public static void test(){ 39 40 41 } 42 43 }
输出结果如下:
super static init sub static init super instance init super new init sub instance init sup new init super instance init super new init sub instance init sup new init
标签:color 顺序 pac static bsp oid 创建 [] xtend
原文地址:http://www.cnblogs.com/fzqm/p/6822161.html