3.1.5 final变量
你可以在任何作用域声明一个变量。Final变量的数值不能在初始化之后进行改变。这样的变量跟其它语言中的常量很相似。
为了声明一个final变量,你可以在类型之前的变量声明使用final关键字,比如:
final int aFinalVar = 0;
前面的语句声明了一个final变量并一起对它进行了初始化。如果你在后面还想给aFinalVar赋其它的值的话,就会导致一个编译错误。在必要的时候,你可以推迟对一个final本地变量进行初始化。你可以先定义,然后在之后再初始化,如下:
final int blankfinal;
. . .
blankfinal = 0;
已经声明了但是还没有初始化的final本地变量称为空白final。同时,一旦final本地变量被初始化,它就不能再设置了。并且之后的任何对blankfinal赋值的操作都将导致一个编译错误。
3.1.5 变量的总结
当你声明了一个变量,你就显性地设置了变量的名字和数据类型。JAVA编程语言右两类的数据类型:原始和引用。原始数据的变量包含一个数值。以下这张表显示了所有的原始数据类型以及它们的大小和格式。
关键字
描述
大小/格式
整型
byte
字节长度整型
8位两个补码
Short
短整型
16位两个补码
int
整型
32位两个补码
long
长整型
64位两个补码
实数
Float
单精度浮点型
32位IEEE 754
Double
双精度浮点型
64位IEEE 754
其它类型
Char
单个字符
16位Unicode字符
boolean
布尔型数值(true或者false)
真或假
变量声明的位置隐含地设置了变量的作用域,它决定了代码的哪一部分可以通过变量名来调用这个变量。具体有以下四种类型的作用域:成员变量作用域、本地变量作用域、参数作用域以及异常处理参数作用域。
你可以使用赋值操作符(=)来在声明的地方对变量进行初始化。
你也可以将变量声明为final。Final变量的数值在初始化之后不能再被改变。