public class Telphone {
//属性(成员变量)
float screen;
float cpu;
float mem;
int var = 30;
//方法
void call(){
int var = 40;//局部变量
System.out.println("var:"+var);
int localVar = 10;//局部变量
System.out.println("localVar:"+localVar);
//局部变量与成员变量同名的情况下访问成员变量
System.out.println("var:"+this.var);
}
void sendMessage(){
int localVar = 20;//局部变量
System.out.println("localVar:"+localVar);
System.out.println("var:"+var);//成员变量
//成员变量没有赋值的情况下,默认有个初始值比如float为0.0 String为null
System.out.println("screen:"+screen+" cpu:"+cpu+" mem:"+ mem);
}
}
定义在类里的,也就是screen,cpu,mem,var那个位置,就是成员变量,在JAVA里全局变量和成员变量是一个意思。
定义在方法里或域里就叫做局部变量,像call方法里的var,localVar以及sendMessage的localVar都是局部变量。
如果出现局部变量与成员变量同名情况,在方法中需要通过this.变量名访问成员变量。
所谓域就是{}里面,比如
public void show() {
int b = 2;//局部变量
if(true) {
int a = 1;//局部变量
}
//这个位置访问a,无效
}
//这个位置,或其他方法里访问b,无效
他的作用范围:
局部变量离开了他的域{}就无效