我们程序设计要追求“高内聚,低耦合”。高内聚:类的内部数据操作细节自己完成,不允许外部干涉;低耦合:仅暴露少量的方法给外部使用。
编程中封装的具体意义
便于调用者调用。
良好的封装,便于修改内部代码,提高可维护性。
良好的封装,可进行数据完整性检测,保证数据的有效性。
使用访问控制符,实现封装
| 同一个类 | 同一个包中 | 子类 | 所有类 |
private | * |
|
|
|
default(即不加修饰符的时候) | * | * |
|
|
protected | * | * | * |
|
public | * | * | * | * |
封装的使用细节
1. 属性一般使用private.(除非本属性确定会让子类继承并且使用)
提供相应的get/set方法来访问相关属性. 这些方法通常是public,从而提供对属性的读取操作。 (注意:boolean变量的get方法是用:is开头!)
2. 一些只用于本类的辅助性方法可以用private,希望其他类调用的方法用public。