Effective Java

来源:互联网 发布:数据库系统概论pdf下载 编辑:程序博客网 时间:2024/06/07 10:25

读书笔记 仅供参考

封装:隐藏了模块的实现细节可以有效地解除系统之间的耦合关系

对于顶层的类和接口,只有两种可能的访问级别:包级私有(即缺省)和 public。包级私有意味着是这个包的实现的一部分,而 public 意味着是包的 API 的一部分。需要降低不必要 puclic 类的可访问性。

  • private:只有在声明该成员的类内部可用
  • default:声明该成员的包内部的类都可以访问
  • protected:声明该成员的类的子类和声明该成员的包内部的类可以访问
  • public:都可以访问

    ps:

  • 如果方法覆盖了超类中的一个方法,子类中的访问级别不允许低于超类中的访问级别

  • 接口中的所有方法都隐含着公有访问级别
  • 实例域绝对不能是公有的

    ps2:

  • 即使是 final 域,一旦包含非 final 域的引用,会拥有非 final 域的所有缺点。例如数组