Java 什么是类常数?

Java 什么是类常数?,java,class,constants,terminology,Java,Class,Constants,Terminology,我被告知声明并初始化我的类常量。我不知道它是什么,所以我搜索了谷歌,显然每个人都知道它是什么,也没有人问过它。那么什么是类常数?它只是一个在整个类中不会改变的值吗?类变量是静态的;实例变量不是 最终变量是常量 所以类常量的声明如下: public class Foo { // Class constant public static final String DEFAULT_NAME = "Bar"; public static void main(String [

我被告知声明并初始化我的类常量。我不知道它是什么,所以我搜索了谷歌,显然每个人都知道它是什么,也没有人问过它。那么什么是类常数?它只是一个在整个类中不会改变的值吗?

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

最终变量是常量

所以类常量的声明如下:

public class Foo {

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

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

says(部分)的所有实例都是一样的

在初始化类()时,会具体化一个
静态
字段(有时称为类变量)

说(部分)

常量变量是原语类型或类型为
字符串的
最终
变量,用常量表达式()初始化

tl;博士
总而言之,类常量是一个
静态final
字段。

如果在我的类中我们没有讨论
final
,我假设可以使用
公共静态类型DEFAULT\u NAME=“Bar”?如果它不是
final
,那么它就不是一个常数。很多Java教程,包括Oracle的,都应该涵盖这一点。@blm是的,它似乎是一个基本的东西,只是在我的课上从来没有提到过。然后我得到了一个让我困惑的问题。这是一件非常基本的事情,谷歌搜索时甚至没有定义,哈哈。