## 变量、常量的使用
1.
种类
- 变量: 静态变量、实例变量、局部变量
- 常量: 常量、静态常量
2.
变量的使用
- 静态变量:被static 修饰,定义在所有方法体之外。
- 实例变量: 不被static修饰,定义在所有方法体之外。
- 局部变量: 定义在方法体内。
public class Test01{
public static int k; //静态变量,也叫类变量
public String s; //实例变量
public static void main(String[] args){
double d; //局部变量
}
}
需注意:
T1.
静态变量或实例变量在一个类中可以和局部变量重名,但方法体内使用时可能会出现掩盖效果。
public class Test02{
public static int a = 0; //静态变量
public static void main(String[] args){
{
int a = 1; //局部变量
System.out.println(a); //打印的结果是1,掩盖静态变量
}
System.out.println(a); //打印的结果是0
}
}
T2.
嵌套的块内不能出现重名的局部变量,同一个类中静态变量和实例变量不能重名
public class Test03{
public static void main(String[] args){
int x;
{
//int x; 报错
}
}
}
T3.
实例变量和局部变量需要初始化之后才能使用,但是对象实例化时,实例变量会自动赋初值!!!
public class Test04{
private String s;
public String getS() { //getter方法
return s;
}
public static void main(String[] args){
int x;
//System.out.println(s); 报错
//System.out.println(x); 报错
}
}
class Test04_1{
public static void main(String[] args) {
Test04 demo = new Test04(); //实例化
System.out.println(demo.getS()); //结果为null
}
}
T4.
静态变量会默认初始化值,byte、short、int、long类型为0,double、float类型为0.0,char类型为 ‘\u0000’,boolean类型为false,引用类型为null。
3.
常量的使用
- 常量:关键字final 修饰
- 静态常量:加上修饰符static,定义在所有方法体之外。
约定俗成用大写字母,示例:
public class Test05{
//public final int MAX; 报错
public static final String STR = "123"; //静态常量
public static void main(String[] args){
final String STR2; //不报错
STR2 = "124"; //赋值
//STR2 = "125"; 再次赋值,报错
}
}
需要注意:
T1.
常量在方法体外一经定义,必须马上赋值,否则会报错;
T2.
方法体内可以稍后赋值,但只能赋值一次。
个人终极版,笔记如有错误之处,请各位大佬指正,欢迎评论留言,不胜感激!!!