类初始化 常量引用
Posted 飞奔的菜鸟
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了类初始化 常量引用相关的知识,希望对你有一定的参考价值。
class ConstClass{
static {
System.out.println("ConstClass init");
}
public static final String HELLOWORLD = "hello world";
}
class NotInitialzation{
public static void main(String[] args){
System.out.println(ConstClass.HELLOWORLD);
//只是输出 hello world
//因为虽然在Java源码中引用了ConstClass类中的常量,但是在编译阶段将此常量
//的值存储到了NotInitialzation类的常量池中,对常量ConstClass.HELLOWORLD
//的引用实际都被转化为NotInitialzation类对自身常量池的引用
//也就是说NotInitialzation的class文件中没有ConstClass类的符号引用入口
//这两个类在编译成class之后就不存在任何联系了
}
}
以上是关于类初始化 常量引用的主要内容,如果未能解决你的问题,请参考以下文章