类加载顺序:
1.执行父类中的静态成员变量和静态代码块
2.执行子类中的静态成员变量和静态代码块
3.执行父类的普通成员变量和代码块,
再执行父类的构造方法;
4.执行子类的普通成员变量和代码块,
再执行子类的构造方法;
说明:
public class Test {
static {
System.out.println(“静态代码块”);
}
{
System.out.println(“构造代码块”);
}
public Test(){
System.out.println(“构造方法”);
}
}
例一:
import java.util.*;
public class Main11{
public static void main(String[] args){
Son son = new Son();
}
}
class Parent{
{
System.out.print("1");
}
static {
System.out.print("2");
}
public Parent(){
System.out.print("3");
}
}
class Son extends Parent{
{
System.out.print("4");
}
static{
System.out.print("5");
}