public class Student{
public void who(){
return name;
}
private String name;//成员变量---属性
public void eat(){
int time=123;//局部变量
}
}
- 成员变量定义在类中,整个类中都能访问,和具体的定义位置无关
- 局部变量定义在方法、语句、局部代码块中,只在所属的区域中有效,而且必须是先定义后使用,必须是先赋初值后使用
- 成员变量存在于堆内存的对象中,堆内存中的对象大小可以任意,并允许在运行时进行调整。所以访问查找 的效率比较低
- 局部变量存在与栈内存的方法中,可以快速定位,但是大小是限定的
- 成员变量随着对象的创建而存在,随着对象的表示而消失。
- 局部变量随着所属区域的执行而存在,随着所属 区域的结束而释放 成员变量都有默认初始化值;局部变量没有默认初始化值