类的加载顺序
1.先加载父类再加载子类,静态先执行
package test1;
public class Animal {
String name;
String eyescolor;
{System.out.println("父类代码块");}
static
{System.out.println("父类static代码块");}
public Animal(String name,int legs){
System.out.println("父类构造方法");
}
}
package test1;
public class Dog extends Animal {
{System.out.println("子类代码块");}
static
{System.out.println("子类static代码块");}
public Dog(String name,int legs) {
super(name,legs);
System.out.println("子类构造方法");
}
}
package test1;
public class classmain {
public static void main(String []args) {
Dog a=new Dog("huang",5);
}
}
从执行结果我们可以总结出:加载类的时候,先加载父类在加载子类。
静态代码块>普通代码块>构造方法代码块,并且静态代码块仅会加载一次。