## 变量、常量的使用
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.方法体内可以稍后赋值,但只能赋值一次。
个人终极版,笔记如有错误之处,请各位大佬指正,欢迎评论留言,不胜感激!!!