上QQ阅读APP看书,第一时间看更新
3.5 常量
前两节详细介绍了关于Java语言中变量的定义和初始化功能,通过学习我们了解到变量主要用来存储数值,该数值可以变化,即变量在程序运行期间是可以变化的。从程序开始运行到结束为止,肯定有保持不变的量,它们由谁来存储呢?这就涉及Java语言中的常量。
在Java程序设计中,使用关键字“final”来声明一个常量。常量表示在程序开始运行到结束期间都不变的量。
【实例3-13】例如下面的程序代码。
01 //这里的X是一个常量,由于是不在某个方法内的常量,也可以称为成员常量(作者给它取的名字) 02 public class Var2 //定义一个Var2类 03 { 04 final int X=20; //定义了一个常量X 05 public static void main(String[] args) //主方法 06 { 07 Var2 m=new Var2(); //创建对象m 08 System.out.println(" 打印数据X="+m.X); //输出常量X的值 09 } 10 }
【代码说明】第4行通过关键字final定义了一个常量X。第8行输出这个常量的值。
注意 常量名一般都定义为大写字母。
【运行效果】
打印数据X=20
【实例3-14】如果要声明一个类常量,就需要使用关键字static和final的组合,例如下面的例子。
01 //这里的X是类常量,所以无论是哪个对象的引用,它的值始终不变 02 public class Var3 //定义一个Var3类 03 { 04 static final int X=20; //定义了一个类常量X 05 public static void main(String[] args) //主方法 06 { 07 System.out.println(" 打印数据X="+X); //输出类常量X的值 08 } 09 }
【代码说明】第4行使用关键字static和final的组合,定义了类常量X。第7行在没有实例化对象的情况下,直接在控制台输出X的值。
【运行效果】
打印数据X=20
从上面的例子可以看出,如果这个常量是类常量,那么无须再构造对象,可以直接引用这个常量。前一个例子声明的常量是一般常量,不是类常量,所以一定要构造对象,通过对象来引用这个常量,所以切记类常量和一般常量的区别所在。