Java面向对象03成员变量和局部变量

允我心安 提交于 2019-12-10 14:15:58

成员变量和局部变量

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访问,便于和局部变量区分。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!