肆——Java最常用的编程元素:常量与变量
一、常量
一般来说,所有的程序设计语言都需要定义常量(Constant)。所谓常量,就是固定不变的量,其一旦被定义并赋初值后,它的值就不能再被改变。
1.声明常量
在Java语言中,主要是利用关键字final来进行定义常量的,声明常量的语法为:
final 数据类型 常量名称 [=值];
常量名称通常使用大写字母,但不是硬性要求,仅仅是编码习惯。值得注意的是,虽然Java中有关键字const,但目前并没有被Java正式启用。const是C++中定义常量的关键字。
常量标识符和变量标识符规定一样,可由任意顺序的大小写字母、数字、下划线( _ )和美元符号( $ )等组成,标识符不能以数字开头,也不能是Java中的保留关键字。
此外,在定义常量时,需注意如下两点:
(1)必须要在常量声明时对其进行初始化,否则会出现编译错误。常量一旦初始化后,就无法再次对这个常量进行赋值。
(2)final 关键字不仅可以用来修饰基本数据类型的常量,还可以用来修饰 “ 对象引用 ” 或者方法。
2.常量示例(加粗字体为定义常量)
行数
代码
static final int HOUR = 24;//定义一个静态常量
这句中的static是Java的关键字。只有加了static才能被main函数引用。
变量是利用声明的方式,将内存中的某个内存块保留下来以供程序使用,其内的值是可变的。
可声明的变量数据类型有整型(int)、字符型(char)、浮点型(float或double),
也可以是其他的数据类型(如自定义的数据类型——类)。在英语中,数据类型的“type”和类的“class”本身就是一组同义词,所以二者在地位上是对等的。
1.声明变量声明变量有两个作用。
(1)指定在内存中分配空间大小。变量在声明时,可以同时给予初始化(即赋予初始值)。
(2)规定这个变量所能接受的运算。例如:整数数据类型int只能接受加、减、乘、除(+,-,*,/)等运算符。
其实在本质上,“类”就是在诸如整型、浮点型等基本数据“不够用”时,用户自定义的一种数据类型(User—Difined Type,UDT)。正是有了类型的区分,各个不同类型的变量就可以根据其类型所规定的操作范围“各司其职”。
因此,任何一个变量在声明时必须给予它一个类型,而在相同的作用范围内,变量还必须有个独一无二的名称。
注意:变量的值永远以最后更新的值为准。 扩展:声明一个变量时,编译程序会在内存里开辟一块足以容纳此变量的内存空间给它。不管该变量的值如何改变,都永远使用相同的内存空间。常量是不同于变量的一种类型,它的值是固定的,通常给变量赋值时,会将常量赋值给变量。
2.变量的命名规则变量也是一种标识符,所以它也遵循标识符的命名规则。
规则如下:命名规则
3.变量的作用范围
变量是有作用范围(Scope)的,作用范围有时也称作用域。
一旦超出变量的作用范围,就无法再使用这个变量。
变量分为成员变量和局部变量。
(1)成员变量(加粗字体为定义的成员变量)
col>
col>
行号
代码
static int num = 1; //定义一个成员变量
行号
代码
for(int i = 0; i<=10; i++)
int num = 0;
C/C++语法允许作用域嵌套 Java语法不允许作用域嵌套
Fun()
Fun()
{
{
int num = 1;
int num = 1;
{
{
int num = 2;
int num = 2;
//正确输出num = 2,内嵌套的局部变量优先
//编译错误:和{ }外的变量num的作用域重叠
cout<<" i= "<<i<<endl;
System.out.println(" i= " + i);
}
}
}
}
行号
代码
01
br>
02
br>
03
br>
04
br>
05
br>
06
br>
07
br>
08
br>
09
br>
第05行所定义的 x ,作为类 Test 的数据成员,它的作用域是整个类,即从第 02 行到第 08 行之间,这个范围包括了第 03 行到第 07 行,而这个区域内的 main 方法,其内部也定义了一个名为 x 的变量,在这个范围内,第 08 行定义的变量 x 被第 05 行定义的变量 x 所覆盖。
四、本文自我总结
版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.bianchenghao6.com/h6javajc/4104.html