¯
变量的分类
注意变量名的命名规则:从语法角度看,
是一个合法的标识符
;从程序可读性角度看,是多个有意义的单词组合而成,其中
第一
个单词首字母小写
,后面每个单词首字母大写。
成员变量:在类范围里定义的变量。
µ
类变量:定义时使用static修饰的成员变量
ü
它从这个类的准备阶段起开始存在,直到系统完全销毁这个
类
时消亡---与类共存亡。
ü
访问类变量:类名.类变量名
µ
实例变量:定义时不使用static修饰的成员变量
ü
它从这个类的实例被创建开始起存在,直到系统完全销毁这个
实例
---与实例共存亡。
ü
访问实例变量:实例名.实例变量名
注意:虽然也可以通过实例名访问类变量,但这个实例访问的并不是这个实例的变量,依然访问的是对应类的类变量。
例4.14 定义Dog类,类中定义两个成员变量。
class Dog{
public String name;
public static int eyeNum;
}
Dog.eyeNum=10; //对 Dog.name=“京巴”; //错
Dog d1=new Dog(); d1.eyeNum
?
Dog d2=new Dog();
d2.eyeNum=20
;
d1.eyeNum=
?
局部变量
µ
形参:在定义方法首部时定义的变量,在整个方法内有效,方法结束时消失。
µ
方法局部变量:在方法体内定义的局部变量,从定义该变量的地方生效,到该方法结束时失效。
µ
代码块局部变量:在代码块中定义的局部变量,只在该代码块内有效
注意:
ü
局部变量除形参外,都必须显示初始化。
ü
允许局部变量和成员变量同名,可使用this或类名作为访问者来限定访问成员变量。