Java 继承类执行顺序
2022-03-13 本文已影响0人
我叫何家明
时不时就忘记 这个顺序,那就把代码敲出来 执行一下。
package com.huawei.test.base;
/**
* @author 无极之岚
* @description:
* @date 2022/3/13 4:48 PM
*/
public class ParentAndSon {
public static void main(String[] args) {
Son son = new Son();
son.new InnerClass();
}
}
class Father {
static {
System.out.println("父类static");
}
{
System.out.println("父类 代码块");
}
class InnerClass {
InnerClass() {
System.out.println("parent inner class");
}
}
public Father() {
System.out.println("father constructor");
}
}
class Son extends Father {
static {
System.out.println("子类 static");
}
{
System.out.println("子类 代码块");
}
class InnerClass {
InnerClass() {
System.out.println("son inner class");
}
}
public Son() {
System.out.println("son constructor");
}
}
执行结果
父类static
子类 static
父类 代码块
father constructor
子类 代码块
son constructor
son inner class