package test;
/**
* 要点:
* 一:父类与子类的静态代码块和构造方法的执行顺序
* [父类的静态代码块-->子类的静态代码块-->父类构造方法-->子类构造方法]
* 二:静态代码块(static block ),不包含在任何方法体中。当类被载入时,
* 自动执行静态代码块,且只被执行一次经常用于类属性的初始化。
*
*/
class Parent {
static{
System.out.println("parent static block");
}
public Parent(){
System.out.println("Class Parent conformation");
}
}
pubilc class Child extends Parent {
static{
System.out.println("son static block");
}
public Child(){
System.out.println("Class Son conformation");
}
public Child(String str){
System.out.println("one parameter's conformation of class child");
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Parent parent = new Child();
System.out.println("-----------------");
parent = new Child();
System.out.println("-----------------");
Parent parent1 = new Child("");
}
}
运行结果:
parent static block
son static block
Class Parent conformation
Class Son conformation
-----------------
Class Parent conformation
Class Son conformation
-----------------
Class Parent conformation
one parameter's conformation of class child