JAVA类的成员初始化顺序

来源:互联网 发布:高性能mysql 知乎 编辑:程序博客网 时间:2024/05/21 00:46

下面是父类代码:

package staitic;public class Parent {private static String p_StaticField = "父类--静态变量"; private String p_Field = "父类--变量"; // 静态初始化块 static { System.out.println(p_StaticField); System.out.println("父类--静态初始化块"); } // 初始化块 { System.out.println(p_Field); System.out.println("父类--初始化块"); } // 构造器 public Parent() { System.out.println("父类--构造器"); } }//out:

下面是子类代码:

package staitic;public class Subclass extends Parent {    // 静态变量     private static String s_StaticField = "子类--静态变量";     // 变量     private String s_Field = "子类--变量";     // 静态初始化块     static {    System.out.println(s_StaticField);     System.out.println("子类--静态初始化块");     }     // 构造器     public Subclass() {     System.out.println("子类--构造器");     }     // 初始化块     {     System.out.println(s_Field);     System.out.println("子类--初始化块");     }     public static void f(){    System.out.println("子类--静态方法");    }    public static void main(String[] args) {    // TODO Auto-generated method stub    System.out.println("主函数");    Subclass sub = new Subclass();//  Subclass.f();    }    }

实验结果:

父类--静态变量父类--静态初始化块子类--静态变量子类--静态初始化块主函数父类--变量父类--初始化块父类--构造器子类--变量子类--初始化块子类--构造器
0 0
原创粉丝点击