如何在Java中使用常量

藏色散人
藏色散人 原创
2019-01-19 10:13:12 6950浏览

常量是一个变量,它的值一旦被赋值就不能改变。Java没有内置对常量的支持,但是变量修饰符static和final可以用来有效地创建常量。

常量可以使您的程序更容易被其他人阅读和理解。此外,JVM和应用程序都会缓存一个常量,因此使用常量可以提高性能。

static 修饰符

这允许在不创建类实例的情况下使用变量;静态类成员与类本身相关联,而不是与对象相关联。所有类实例共享变量的相同副本。

这意味着另一个应用程序或main()可以轻松地使用它。

例如,class myClass包含一个静态变量days_in_week:

public class myClass {
   static int days_in_week = 7;
}

因为此变量是静态的,所以可以在其他地方使用它而无需显式创建myClass对象:

public class myOtherClass {  
   static void main(String[] args) {
       System.out.println(myClass.days_in_week);
   }
 }

final修饰符

final修饰符意味着变量的值不能改变。分配值后,无法重新分配。

可以使用final修饰符使原始数据类型(即int,short,long,byte,char,float,double,boolean)成为不可变/不可更改的。

这些修饰符一起创建一个常量变量。

static final int DAYS_IN_WEEK = 7;

注意,在添加final修饰符之后,我们在所有大写中声明DAYS_IN_WEEK。在Java程序员中,用大写字母定义常量变量以及用下划线分隔单词是一种长期的实践。

Java不需要这种格式,但它使任何阅读代码的人更容易立即识别常量。

常数变量的潜在问题

在Java中,final关键字的工作方式是变量指向值的指针不能更改。让我们重复一下:它是不能改变它所指向的位置的指针。

不能保证被引用的对象将保持不变,只能保证变量将始终持有对同一对象的引用。如果引用的对象是可变的(即具有可以更改的字段),那么常量变量可能包含一个与最初分配的值不同的值。

以上就是如何在Java中使用常量的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。