Java笔试题学习之30(静态块,静态属性,final关键字)
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
【Java笔试题学习之30(静态块,静态属性,final关键字)】分析:
public final static String c=“C”; final和static关键字,使得变量c在编译阶段就已经被赋值了,并存在常量池中,所以在类的加载阶段就不会触发静态块的执行
如果去掉final
则输出:
A
B
C
分析,静态块的执行顺序,先父类,再子类
推荐阅读
- JAVA(抽象类与接口的区别&重载与重写&内存泄漏)
- EffectiveObjective-C2.0|EffectiveObjective-C2.0 笔记 - 第二部分
- 生活随笔|好天气下的意外之喜
- Android中的AES加密-下
- 事件代理
- Java|Java OpenCV图像处理之SIFT角点检测详解
- java中如何实现重建二叉树
- 失踪的钢笔
- 【读书笔记】贝叶斯原理
- 【韩语学习】(韩语随堂笔记整理)