读书笔记 仅供参考
封装:隐藏了模块的实现细节可以有效地解除系统之间的耦合关系
对于顶层的类和接口,只有两种可能的访问级别:包级私有(即缺省)和 public。包级私有意味着是这个包的实现的一部分,而 public 意味着是包的 API 的一部分。需要降低不必要 puclic 类的可访问性。
- private:只有在声明该成员的类内部可用
- default:声明该成员的包内部的类都可以访问
- protected:声明该成员的类的子类和声明该成员的包内部的类可以访问
public:都可以访问
ps:
如果方法覆盖了超类中的一个方法,子类中的访问级别不允许低于超类中的访问级别
- 接口中的所有方法都隐含着公有访问级别
实例域绝对不能是公有的
ps2:
即使是 final 域,一旦包含非 final 域的引用,会拥有非 final 域的所有缺点。例如数组