Item 15: Minimize the accessibility of classes and menbers
使类和成员的可访问性最小化
Item 16: In public classes, use accessor methods, not public fields
在公有类中使用访问方法而非公有域来访问域
Item 17: Minimize mutablility
使可变性最小化
Item 18: Favor composition over inheritance
复合优先于继承
Item 19: Design and document for inheritance or else prohibit it
要么设计继承并提供文档,要么禁止继承
Item 20: Prefer interfaces to abstract classes
接口优先于抽象类
Item 21: Design interfaces for posterity
为后代设计接口
Item 22: Use interfaces only to define types
接口只用于定义类型
Item 23: Prefer class hierachies to tagged classes
类层次结构优先于标签类
这俩种方式都是为了区分不同的类,类层次结构指继承方法,标签类指在类内设置一个标签域。
Item 24: Favor static menber classes over nonstatic
静态成员类优先于非静态成员类
Item 25: Limit source files to a single top-level class
限制源文件为单个顶级类
即当个java文件中只定义一个类。顶级类指源码文件中最外层的类。