4.成员变量和局部变量的区别?
(1)在类中的位置不同
a.成员变量:在类中方法外
b.局部变量:在方法定义中或者方法声明上
(2)在内存中的位置不同
a.成员变量:在堆内存(成员变量属于对象,对象进堆内存)
b.局部变量:在栈内存(局部变量属于方法,方法进栈内存)
(3)生命周期不同
a.成员变量:随着对象的创建而存在,随着对象的消失而消失
b.局部变量:随着方法的调用而存在,随着方法的调用完毕而消失
(4)初始化值不同
a.成员变量:有默认初始化值
b.局部变量:没有默认初始化值,必须定义,赋值,然后才能使用。
5.private关键字的特点
(1)封装是指隐藏对象的属性和实现细节,仅对外提供公共访问方式,private是实现封装的一种形式
(2)private是一个权限修饰符,可以修饰成员变量和成员方法
(3)被private修饰的成员,只能在本类中访问
(4)当成员变量被private关键字修饰后,需要提供对应的get和set方法供外部访问
6.谈谈你对this的理解?
(1)this只能代表本类对象
(2)this代表所属函数(方法)的所属对象
(3)谁来调用我,我就代表谁
(4)this可用于区分成员变量和局部变量同名的情况 |
|