变量
变量的定义
变量是内存中的一个存储区域,该区域有自己的名称(变量名)和类型(数据类型),Java中每个变量必须先声明,后使用, 该区域的数据可以在同一类型范围内不断变化。
声明格式
数据类型 变量名 = 初始化值;
变量的分类
按数据类型
对于不同的数据类型,变量在内存中分配了不同大小的内存空间,数据类型分为基本数据类型和引用数据类型:
- 引用数据类型:
- 类(class)
- 接口(interface)
- 数组
- 基本数据类型:
- 布尔型(boolean)
- 字符型(char)
- 数值型:
- byte
- short
- int
- long
- 浮点类型:
- float
- double
按声明的位置
在方法体外,类体内声明的变量称为成员变量;在方法体内部声明的变量称为局部变量:
- 成员变量:
- 实例变量(不以static修饰)
- 类变量(以static修饰)
- 局部变量:
- 形参(方法签名中定义的变量)
- 方法局部变量(在方法内定义的)
- 代码块局部变量(在代码块内定义)
成员变量和局部变量在初始化值方面的异同:
- 相同点:都有声明周期
- 不同点:局部变量除形参外,需要显示初始化
常量
常量是一种特殊的变量,它的值被设定后,在程序运行过程中不允许改变。
常量的定义
语法:
final 常量名 = 值;
常量必须要在声明的时候就对其进行初始化,否则会出现编译错误。常量一旦初始化后就无法再改动。
字符型常量
字符型常量的三种表现形式:
- 字符常量是用单引号括起来的单个字符,涵盖世界上所有书面语的字符。
例如:
char c1 = 'a';
char c2 = '中';
char c3 = '9';
- Java中还允许使用转义字符 ‘\’ 来将其后的字符转变为特殊字符型常量。
例如:
// '\n'表示换行符
char c = '\n';
- 直接使用 unicode 值来表示字符型常量:‘\uXXXX’。其中,‘XXXX’ 代表一个十六进制整数。
例如:
// '\u000a' 表示 '\n'
char c = '\u000a';