[list]
[1] 将公共操作和域放在超类
[2] 不要使用受保护的域
·子类集合是无限的,任何一个人都能够由某个类派生一个子类,并编写代码以直接访问protected的实例域,从而破坏了封装性。
·同一个包中的所有类都可以访问protected域,而不管它是否这个类的子类
[3] 使用继承实现“is-a”关系
[4] 除非所有继承的方法都有意义,否则不要使用继承
[5] 在覆盖方法时,不要改变预期的行为
[6] 使用多态,而非类型信息
[7] 不要过多地使用反射
[/list]
@see Core Java page203
[1] 将公共操作和域放在超类
[2] 不要使用受保护的域
·子类集合是无限的,任何一个人都能够由某个类派生一个子类,并编写代码以直接访问protected的实例域,从而破坏了封装性。
·同一个包中的所有类都可以访问protected域,而不管它是否这个类的子类
[3] 使用继承实现“is-a”关系
[4] 除非所有继承的方法都有意义,否则不要使用继承
[5] 在覆盖方法时,不要改变预期的行为
[6] 使用多态,而非类型信息
[7] 不要过多地使用反射
[/list]
@see Core Java page203