[18/12/02]封装及4种修饰符

一、封装(如:用户使用电视机不需要知道内部细节,只给它留个开关就可以了)

       需要让用户知道的才暴露出来,不需要让用户知道的全部隐藏起来,这就是封装。即封装就是把对象的属性和操作结合为一个独立的整体,并尽可能隐藏对象的内部实现细节。

优点:

     1. 提高代码的安全性。  2. 提高代码的复用性。  3. “高内聚”:封装细节,便于修改内部代码,提高可维护性。

     4. “低耦合”:简化外部调用,便于调用者使用,便于扩展和协作。

      Java是使用“访问控制符”来控制哪些细节需要封装,哪些细节需要暴露的。 Java中4种“访问控制符”分别为private、default、protected、public,它们说明了面向对象的封装性,

所以我们要利用它们尽可能的让访问权限降到最低,从而提高安全性。

   

【示例】

1、public访问权限修饰符:该项目的所有包中的所有类。

1-1:public访问权限—本类中访问public属性(位置:同一类中  ,可以)

图5-8 public访问权限—本类中访问public属性.png

1-2:public访问权限—本包中访问public属性(位置:同一包中别的类  , 可以)

图5-9 public访问权限—本包中访问public属性.png

1-3: public访问权限—非本包中访问public属性(位置: 不同包,是其子类  ,可以)   此处 Student 类继承于 Person 类

图5-10 public访问权限—不同包中的子类访问public属性.png

1-4:public访问权限—不同包中的非子类访问public属性(位置:不同包,不是其子类,可以)

图5-11 public访问权限—不同包中的非子类访问public属性.png

 

2、protected访问权限修饰符: 同一个包中的类以及其他包中的子类(非其子类不能访问)。

    区别于public :不同包中的非子类不能访问

图5-12 protected访问权限—修改后的Person类.png

图5-13 protected访问权限—不同包中的非子类不能访问protected属性.png

 

3、default 默认访问权限修饰符:同一个包中的类

图5-14 默认访问权限—修改后的Person类.png

 

4、private访问权限修饰符:同一个类。

图5-15 private访问权限—修改后的Person类.png

 

posted @ 2018-12-04 21:25  ID长安忆  阅读(375)  评论(0)    收藏  举报