Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
为什么我们需要它们,即使用它们有什么好处?
最后,编译时常量需要是最终的,但不一定是静态的,这对吗?
编译时常量的值仅在编译时决定。考虑这个
public static final String s = "abc";
在这里,变量s是指一个字符串对象,它是一个编译时常量,它将在类加载时在内存中创建。在字符串对象的情况下,常量池中只会创建一个字符串abc,所以每当有多个值为 的字符串常量时abc,它们都会引用abc常量池内存中的同一个对象。
s
abc
这样做的好处是只需要创建一个可以被多个引用变量引用的对象。