面向对象三大特征:
继承、封装、多态
访问控制符
封装(encapsulation)
为什么需要封装?封装的作用和含义?
我要看电视,只需要按一下开关和换台就可以了。有必要了解电视机内部的结构吗?有必要碰碰显像管吗?
我要开车,….
需要让用户知道的暴露出来,不需要让用户了解的全部隐藏起来。这就是封装。
白话:该露的露,该藏的藏
专业:我们程序设计要追求“高内聚,低耦合”。高内聚就是类的内部数据操作细节自己完成,不允许外部干涉;低耦合:仅暴露少量的方法给外部使用。
编程中封装的具体意义
- 便于调用者调用。
- 良好的封装,便于修改内部代码,提高可维护性。
- 良好的封装,可进行数据完整性检测,保证数据的有效性。
封装的使用细节
- 类的属性一般使用private.(除非本属性确定会让子类继承并且使用)
提供相应的get/set方法来访问相关属性. 这些方法通常是public,从而提供对属性的读取操作。 (注意:boolean变量的get方法是用:is开头!)- 一些只用于本类的辅助性方法可以用private,希望其他类调用的方法用public。