面向对象--类

1、成员变量和局部变量的区别:
1. 在类中的位置不一样
a. 成员变量:在类中方法外
b. 局部变量:在方法定义中或者方法声明上
2. 在内存中的位置不一样
a. 成员变量:在堆内存(成员变量属于对象,对象进堆内存)
b. 局部变量:在栈内存(局部变量属于方法,方法进栈内存)
※ 因为内存中的位置不一样,因此成员变量和局部变量能够重名。
3. 生命周期不一样:
a. 成员变量:随着对象的建立而存在,随着对象的消失而消失
b. 局部变量:对着方法的调用而存在,对着方法的调用完毕而消失
4. 初始化值不一样:
a. 成员变量:有默认初始化值
b. 局部变量:没有默认初始化值,必须定义、赋值,而后才能使用。
注意事项:
• 局部变量名称能够和成员变量名称同样,在方法中使用的时候,采用的是就近原则。
• 基本数据类型变量包括:byte/short/int/long/float/double/boolean/char
• 引用数据类型变量包括:数组、类、接口、枚举。数组

2、匿名对象的概述和应用
1. 匿名对象:没有名字的对象
2. 匿名对象的应用场景:
a. 调用方法,仅仅只调用一次的时候
i. 这样作的好处是为了节省代码
※ 注意:调用屡次的时候不合适,匿名对象调用完毕就变成垃圾,能够被垃圾回收器不定时回收。
b. 匿名对象能够做为实际参数传递。eg:method(new car());
匿名对象能够调用属性,可是调用完后没有任何对象指向它,因此没有任何意义。安全

3、封装
1. 封装:是指隐藏对象的属性和实现细节,仅对外提供公共的访问方式。
2. 封装的好处:
a. 隐藏实现细节,提供公共的访问方式。
b. 提升代码的复用性
c. 提升安全性
3. 封装的原则:
a. 将不须要对外提供的内容都隐藏起来。
b. 把属性隐藏,提供公共的方法对其访问。对象

相关文章
相关标签/搜索