final表示变量的值不会改变 – 换句话说,一个变量的值在声明后不能被修改。
当你想创建一个字符串时,使用public final static String:
>属于类(静态:没有必要使用它的实例),并且
>将不会更改(最终),例如,当您想要定义一个String常量,将可用于该类的所有实例,以及使用该类的其他对象。
例:
public final static String MY_CONSTANT = "SomeValue";
// ... in some other code, possibly in another object, use the constant:
if (input.equals(MyClass.MY_CONSTANT)
类似地:
public static final int ERROR_CODE = 127;
它不需要使用final,但它保持一个常量在程序执行期间被无意中改变,并且用作变量是常数的指示符。
即使常量只能在当前类和/或只在一个地方使用 – 读取所有常量是最好的做法:它更清楚,并且在代码的生命周期中,常数可能最终被使用在多个地方。
此外,使用final可以允许实现执行一些优化,例如。通过内联使用常数的实际值。