Java程序员应当知道的10个面向对象设计原则( 五 )

原则8:接口分离原则

采用多个与特定客户类有关的接口比采用一个通用的涵盖多个业务方法的接口要好 。 设计接口很棘手 , 因为一旦释放接口 , 你就无法在不中断执行的情况下改变它 。 在Java中 , 该原则的另一个优势在于 , 在任何类使用接口之前 , 接口不利于实现所有的方法 , 所以单一的功能意味着更少的实现方法 。

原则9:针对接口编程 , 而不是针对实现编程

该原则可以使代码更加灵活 , 以便可以在任何接口实现中使用 。 因此 , 在Java中最好使用变量接口类型、方法返回类型、方法参数类型等 。 《Effective Java》 和《head first design pattern》书中也有提到 。

原则10:委托原则

该原则最典型的例子是Java中的equals() 和 hashCode() 方法 。 为了平等地比较两个对象 , 我们用类本身而不是客户端类来做比较 。 这个设计原则的好处是没有重复的代码 , 而且很容易对其进行修改 。

总结

推荐阅读