静态代码块、构造代码块 继承情况下执行顺序
2017-03-20 本文已影响23人
ThingLin
</br>
static{ }
静态代码块在类加载时执行。{ }
构造代码与构造器在实例化成对象时会先后顺序一组执行。
在继承状态下,先父后子。
</br>
Parent.java
package demo0320;
public class Parent {
static {
System.out.println("Parent static{ }");
}
{
System.out.println("Parent { }");
}
public Parent(){
System.out.println("Parent(){ }");
}
}
</br>
Son.java
package demo0320;
public class Son extends Parent{
static {
System.out.println("Son static{ }");
}
{
System.out.println("Son { }");
}
public Son(){
System.out.println("Son(){ }");
}
}
</br>
TestMain.java
package demo0320;
public class TestMain {
public static void main(String[] args) {
new Son();
new Son();
}
}
执行结果:
Parent static{ }
Son static{ }
Parent { }
Parent(){ }
Son { }
Son(){ }
Parent { }
Parent(){ }
Son { }
Son(){ }
</br>
</br>
</br>