java设计原则

java六大设计原则

1)开闭原则(Open Closed Principle)

对扩展开放,对修改关闭。

2)里氏置换原则(Liskov Substitution Principle),简称LSP

所有引用基类的地方都可以使用其子类对象。即父类出现的地方子类就能够出现,而且替换为子类不会产生任何错误或异常。

3)依赖倒置原则(Dependence Inversion Principle),简称DIP

高层模块不应该依赖低层模块,二者都应该依赖其抽象;抽象不应当依赖于细节,细节应当依赖于抽象。要针对接口编程,不要针对实现编程。

高层组件应该依赖抽象而不依赖具体,即面向接口编程,一般依赖的成员变量或者参数都应该是抽象的不应该是具体的。

低层模块尽量都要有抽象类或接口,或者两者都有(低层是抽象,高层是具体实现类)。

4)接口隔离原则(Interface Segregation Principle)

使用多个专门的接口比使用单一的总接口要好。

一个接口的功能尽可能的单一,不要让一个接口承担过多的责任,接口中尽量不要声明太多的不相干的方法。

5)合成/聚合复用原则(Composite/Aggregate Reuse Principle CARP)

在一个新的对象里使用另一个已有的对象,使之成为新对象的一部分。从而达到复用已有功能的目的。

合成/聚合、继承是实现复用的两个途径。

通用功能可以使用继承,比如银行卡的取款、存款等。

银行卡的分类要使用合成/聚合,比如信用卡、储蓄卡。

优点:引用对象的内部细节不可见,黑箱复用。

缺点:较多的对象需要管理。

6)迪米特法则

又叫最少知识(知道)原则(Least Knowledge Principle,LKP)

一个对象应该对其他对象尽可能少的了解。一个类应该对自己要调用的类知道最少,只需要知道提供的public方法即可,不必关心其内部实现是如何复杂。

7)单一职责原则

一个类只有一个引起这个类变化的原因。即一个类只完成一个功能,如果做不到一个类只完成一个功能,最少要保证一个方法只完成一个功能。

猜你喜欢

转载自cylu.iteye.com/blog/2309800
今日推荐