废话不多说,直接上代码:
class TextC {
public TextC() {
System.out.println("父类构造方法!");
}
{
System.out.println("父类非静态代码段!");
}
static{
System.out.println("父类静态代码段!");
}
}
public class TextB extends TextC{
public static void main(String[] args) {
TextB textB= new TextB();
}
public TextB(){
System.out.println("子类构造方法!");
}
{
System.out.println("子类非静态代码段!");
}
static{
System.out.println("子类静态代码段!");
}
}
运行结果如下:
父类静态代码段!
子类静态代码段!
父类非静态代码段!
父类构造方法!
子类非静态代码段!
子类构造方法!
先依次执行父子类的静态代码段,再执行非静态的!