Java基础_变量的有效范围
由于变量被定义出来之后只是暂存在内存中,等到程序执行到某一个点,该变量会被释放掉,也就是说变量也有自己的生命周期。
因此,变量的有效范围是指程序代码能够访问该变量的区域,若超出该区域,则在编译会出现错误。
在程序中,一般会根据变量的“有效范围”,将变量分为:“成员变量” 和 “局部变量”
1.成员变量
在类(class)体中,所定义的变量被称为成员变量,成员变量在整个类中都有效。
类的成员变量又可以分为:静态变量(类变量) 和 实例变量
class var { int x=45; static int y=90; }
x:实例变量 y;静态变量
注:静态变量的有效范围可以跨类,甚至可以达到整个应用程序之内。对于静态变量,除了能在定义它的内存取,还能直接以“类名.静态变量”的方式在其他类内使用
2.局部变量
在类的方法体中定义的变量称为 局部变量。局部变量只在当前代码块中有效。
在类的方法中声明的变量,包括方法的参数,都属于局部变量。局部变量只在当前定义的方法内有效,不能用于类的其他方法中,局部变量的生命周期取决于方法,当方法被调用时,java虚拟机为方法中的局部变量分配内存空间,当该方法被调用结束后,则会释放局部变量占用的内存空间,局部变量也会销毁。
注:局部变量可以与成员变量名字相同,此时成员变量将被隐藏,即这个成员变量在这个方法中暂时失效
public class var { static int int i=2; public static void main(String[] args) { int i=4; syso(i); } } //答案:4

浙公网安备 33010602011771号