变量作用域
在Java中主要的变量就是属性(成员变量)和局部变量。
局部变量一般是指在成员方法中定义的变量。
全局变量作用域:整个类体。局部变量(除属性意以外的其他变量)作用域:为定义它的代码块中!
全局变量可以不赋值直接使用(因为有默认值),而局部变量使用前必须先赋值再使用(因为没有默认值)
注意事项和细节
- 属性和局部变量可以重名,访问时遵循就近原则。
- 在同一个作用域中,比如在同一个成员方法中,两个局部变量,不能重名。
- 属性的生命周期较长,伴随着对象的创建而创建,伴随着对象的死亡而死亡,局部变量的生命周期较短,伴随着它的代码块的执行而创建,伴随着代码块的结束而死亡(即在一次方法调用的过程中)。
- 范围不同:
全局变量/属性:可以被本类使用,或其他类使用(通过对象调用)
局部变量:只能在本类中对应的方法中使用 - 修饰符不同
全局变量/属性可以添加修饰符
局部变量不可以加修饰符