1. 变量
1.1 局部变量
在方法或语句块内定义的变量。从属于方法/语句块,生命周期是从声明位置开始到方法或语句块执行完毕为止。必须初始化才能使用。
1.2 成员变量(实例变量)
成员变量也叫实例变量,在方法外部、类的内部定义的成员变量。从属于对象,生命周期伴随对象始终。成员变量会被默认初始化。
数据类型 | 默认值 |
---|---|
int | 0 |
double | 0.0 |
boolean | false |
1.3 静态变量(类变量)
使用static
定义。从属于类,生命周期伴随类始终,从类加载到卸载。
总结:
变量类型 | 声明位置 | 从属 | 声明周期 |
---|---|---|---|
局部变量 | 方法或语句块内部 | 方法/语句块 | 从声明位置开始,直到方法或语句块执行完毕,局部变量消失 |
成员变量 | 类内部,方法外部 | 对象 | 由对象创建,成员变量也跟着创建,对象消失,成员变量也跟着消失 |
静态变量 | 类内部,static 修饰 | 类 | 类被加载,静态变量就有效,类被卸载,静态变量消失 |
public class Variable00 {
static String name;//类变量
int age;//实例变量
void method(){
int a; //局部变量
System.out.println(a);//编译错误,局部变量必须先初始化后使用
System.out.println(name);
}
{
int b;//局部变量
int c = b*5;//编译错误,局部变量必须先初始化后使用
}
}
2. 常量
常量通常指的是一个固定的值,例如:1,2,3,‘a’,‘b’,true,false,等等。
在Java中,主要是利用关键字final
来定义一个常量。常量一旦被初始化后就不能再改变其值。
final type varName = value;
/**
* 测试常量
*/
public class Changliiang00 {
public static void main(String[] args) {
final int AGE = 21;//常量
AGE = 22; //编译错误,常量初始化完成就不能改变其值
}
}
3. 变量命名
- 所有变量、方法、类名都要见名知意
- 类成员变量:首字母小写和驼峰原则:monthSalary
- 局部变量:首字母小写和驼峰原则
- 常量:大写字母和下划线:MAX_VALUE
- 类名:首字母大写和驼峰原则:Man
- 方法名:首字母小写和驼峰原则:run()、toString()