调用 final 修饰的类成员 demo

子类调用父类的静态成员,不会初始化子类

子类调用父类的静态final成员,不会初始化父类、子类

类调用自己的静态final成员,不会初始化自己

package com.pzistart.msgdemoimpl;

public class P {
    public static final int abc = 123;

    static {
        System.out.println("P is init");
    }
}

class S extends P {
    protected static final int a = 1;

    static int b = 2;

    static {
        System.out.println("S is init");
    }
}

class Test {
    public static void main(String[] args) {
	//子类调用父类的静态final成员,不会初始化父类、子类
        System.out.println(S.abc);
		// 类调用自己的静态成员,会初始化自己
//        System.out.println(S.b);
    }
}
posted @ 2023-02-18 16:35  pzistart  阅读(17)  评论(0编辑  收藏  举报