Java笔试题学习之30(静态块,静态属性,final关键字)

    xiaoxiao2023-09-26  142

    public class Test30 { public static void main(String[] args) { System.out.println(BX.c); } } class AX{ static { System.out.println("A"); } } class BX extends AX{ static { System.out.println("B"); } public final static String c="C"; }

    输出:C

    分析: public final static String c=“C”; final和static关键字,使得变量c在编译阶段就已经被赋值了,并存在常量池中,所以在类的加载阶段就不会触发静态块的执行

    如果去掉final 则输出: A B C

    分析,静态块的执行顺序,先父类,再子类

    最新回复(0)