什么是类常量?

时间:2015-11-12 03:08:27

标签: java class constants terminology

我被告知要声明并初始化我的类常量。我不知道它是什么所以我搜索谷歌,显然每个人都已经知道它是什么,没有人问过它。什么是类常量?它只是一个在整个班级都没有变化的价值吗?

2 个答案:

答案 0 :(得分:6)

类变量是静态的;实例变量不是。

最终变量是不变的。

所以类常量将被声明为:

public class Foo {

    // Class constant 
    public static final String DEFAULT_NAME = "Bar";

    public static void main(String [] args) {
        String name = Foo.DEFAULT_NAME;
    }
}

对于Foo的所有实例都是一样的。

答案 1 :(得分:4)

JLS-8.3.1.1. static Fields说(部分)

  

static字段(有时称为类变量)在初始化类(§12.4)时显示。

JLS-4.12.4. final Variables说(部分)

  

常量变量是基本类型或类型final的{​​{1}}变量,使用常量表达式§15.28)初始化

TL;博士

将它们放在一起,类常量是String字段。