java中属性和局部变量的区别
属性(成员变量) vs 局部变量
- 1.相同点:
-
1.1定义变量的格式:
-
1.2先声明后使用
- 1.3变量都有其对应的作用域
- 2.不同点:
- 2.1在类中声明的位置不同
-
属性:直接定义在类中的一对{}内
-
局部变量:声明在方法内,方法形参,代码块内,构造器形参,构造器内部的变量
- 2.2关于权限修饰符
-
属性:在声明属性时指明其权限修饰符
-
常用的权限修饰符:private public 缺省 protected
-
局部变量没有权限修饰符
- 2.3默认初始化值
-
属性:整型 :0
-
浮点型:0.0
-
字符型:0
-
布尔: false
-
引用数据类型(类,接口,数组):null
-
局部变量:没有默认初始话值,在显示的时候要先赋值
-
形参在调用的时候赋值即可
- 2.4在内存中加载的位置
-
属性:加载到堆空间(非static)
-
局部变量:加载到栈空间