一、封装(如:用户使用电视机不需要知道内部细节,只给它留个开关就可以了)
需要让用户知道的才暴露出来,不需要让用户知道的全部隐藏起来,这就是封装。即封装就是把对象的属性和操作结合为一个独立的整体,并尽可能隐藏对象的内部实现细节。
优点:
1. 提高代码的安全性。 2. 提高代码的复用性。 3. “高内聚”:封装细节,便于修改内部代码,提高可维护性。
4. “低耦合”:简化外部调用,便于调用者使用,便于扩展和协作。
Java是使用“访问控制符”来控制哪些细节需要封装,哪些细节需要暴露的。 Java中4种“访问控制符”分别为private、default、protected、public,它们说明了面向对象的封装性,
所以我们要利用它们尽可能的让访问权限降到最低,从而提高安全性。
【示例】
1、public访问权限修饰符:该项目的所有包中的所有类。
1-1:public访问权限—本类中访问public属性(位置:同一类中 ,可以)
1-2:public访问权限—本包中访问public属性(位置:同一包中别的类 , 可以)
1-3: public访问权限—非本包中访问public属性(位置: 不同包,是其子类 ,可以) 此处 Student 类继承于 Person 类
1-4:public访问权限—不同包中的非子类访问public属性(位置:不同包,不是其子类,可以)
2、protected访问权限修饰符: 同一个包中的类以及其他包中的子类(非其子类不能访问)。
区别于public :不同包中的非子类不能访问
3、default 默认访问权限修饰符:同一个包中的类
4、private访问权限修饰符:同一个类。