成员变量和局部变量
1.定义
成员变量:在类中定义,但定义在方法之外的变量称作成员变量。可以不用赋值,成员变量有默认的初始值。
默认初始值如下
整数类型(byte、short、int、long):0
浮点数型(float、double):0.0
字符类型(char):' '(空格,不是空)
布尔类型(boolean):false
引用数据类型:
String:null
数组:null
自定义的类型:null
局部变量:在代码块、方法中、方法参数定义的变量就是局部变量。局部变量使用之前,需要在方法中定义,并且赋值!局部变量没有默认初始值。
示例:
public class Person(){
public String name();
public int age();
public cha gender;
public void selfIntroduce(){
public String hobbit;
System.out.println("*********");
}
}
类Person中的成员变量为name/age/gender,也叫做类Person的属性。
类Person中的成员方法为selfIntroduce,也叫做类Personde的行为或者操作。
定义在selfIntroduce方法中的hobbit是局部变量。
2.作用域
成员变量的作用域在整个定义的类中都可以使用。
局部变量的作用域仅仅限于定义该局部变量的方法中。
成员变量和局部变量的区别
1.作用域不同。成员变量作用域在定义成员变量的整个类;而局部变量作用域仅限于定义局部变量的方法中。
2.初始值不同。成员变量定义是,可以不用赋值,因为Java会自动给成员变量赋予默认值;而局部变量在定义并且赋值以后才能够使用。
3.同一个方法中的局部变量不能同名,但局部变量可以在不同的方法中同名。
4.局部变量可以和成员变量同名,但是局部变量在使用时具有更高的优先级。如果依然要使用成员变量,使用this.xxx调用
5.成员变量可以使用this.xx访问,便于和局部变量区分。
来源:CSDN
作者:Ifordzhang
链接:https://blog.csdn.net/Ifordzhang/article/details/103473452