一、基本使用
一、在 java 编程中,主要的变量就是 属性(成员变量)和局部变量。
二、我们说的局部变量一般是指成员方法中定义的变量(同时方法块中的变量也是属于局部变量)
三、java 中作用域的分类:
全局变量:
也就是属性,作用域为==整个类体==。在类成员(属性、方法、方法块、内部类)中都可以访问
局部变量:也就是除了属性之外的其他变量,作用域为==定义它的代码块中==
四、==全局变量(属性)==可以不赋值,直接使用,因为其有 ==默认值==。
而
成员变量必须进行赋值,才能使用,因为其==没有默认值==
String 类型无论是全局变量还是局部变量,如果没有初始化,那值都为 “null” ,不可以使用 name.equal()方法,否则有==nullPointException==空指针异常。
二、注意的点
- 访问的就近原则
如果局部变量和成员变量(属性)有重名,则在方法块中会优先访问 局部变量。 - 重新定义的问题:
2.1如果局部变量重新对成员变量进行了定义,则方法体内访问的将是局部变量。如果没有重新定义,而是修改数值,则访问的还是成员变量。
2.2在同一个作用域中,==不能定义 同名的两个变量== - 生命周期:
属性(成员变量)的生命周期较长,伴随对象的创建而创建,伴随着对象的销毁而销毁。而局部变量的生命周期较短,伴随代码块的执行而创建,伴随代码块的结束而销毁。 - 访问范围的问题:
4.1全局变量可以被其他类访问—-> 对象名.parameterName
4.2全局变量可以添加修饰符,局部变量不可以。 - 在方法的方法块内,==不可以重新定义==和方法内 ==同名的变量==
1 | public void hello(){ |