- 浏览: 57603 次
- 性别:
- 来自: 成都
最新评论
-
xiaodong*:
很详细,不过没把图贴过来,真是可惜了
session简介 -
lin_llx:
引用对于这个原则,通俗一些的理解就是,父类的方法都要在子类中实 ...
由模式谈面向对象的基本原则Liskov替换原则 -
xnxylxh:
谢谢 辛苦了哈
SimpleFormController流程 -
smiky:
gongtao 写道转你波兰表达式时有问题,转的不对看下我的吧 ...
java的逆波兰式算法 -
smiky:
# if (((String) expression.ge ...
java的逆波兰式算法
文章列表
在进行业务设计时,与特定业务有关的依赖关系应该尽量依赖接口和抽象类,而不是依赖于具体类。具体类只负责相关业务的实现,修改具体类不影响与特定业务有关的依赖关系。
在结构化设计中,我们可以看到底层的模块是对高层抽象模块的实现(高层抽象模块通过调用底层模块),这说明,抽象的模块要依赖具体实现相关的模块,底层模块的具体实现发生变动时将会严重影响高层抽象的模块,显然这是结构化方法的一个"硬伤"。
面向对象方法的依赖关系刚好相反,具体实现类依赖于抽象类和接口(见图-1)。
为此,我们在进行业务设计时,应尽量在接口或抽象类中定义业务方法的原型,并通过具体的实现类(子类)来实现该 ...
- 2007-05-17 09:20
- 浏览 1167
- 评论(0)
这就是著名的Liskov替换原则(LSP),又称里氏替换原则。
对于这个原则,通俗一些的理解就是,父类的方法都要在子类中实现或者重写,不允许子类出现父类所没有定义的方法。
我们前面说过依赖颠倒原则,说的是父类不能依赖子类,它们都要依赖抽象类。我们说这种依赖是我们实现代码扩展和运行期内绑定(多态)的基础。因为一旦类的使用者依赖某个具体的类,那么对该依赖的扩展就无从谈起;而依赖某个抽象类,则只要实现了该抽象类的子类,都可以被类的使用者使用,从而实现了系统的扩展。
但是,光有依赖颠倒原则,并不一定就使我们的代码真正具有良好的扩展性和运行期内绑定。请看下面的代码:
pub ...
- 2007-05-16 10:06
- 浏览 4072
- 评论(2)
所谓单一职责原则,就是就一个类而言,应该仅有一个引起它的变化的原因。换句话说,一个类的功能要单一,只做与它相关的事情。
这个原则是最简单、最容易理解,却是最不容易做到的事情。这个原则的道理谁都理解,可是 ...
- 2007-05-16 09:43
- 浏览 1327
- 评论(0)
一个良好的面向对象设计需要遵循一些基本原则,如单一职责原则(SRP)、开放-封闭原则(OCP)、Liskov替换原则(LSP)、依赖倒置原则(DIP)、接口分离原则(ISP)等。
1、 单一职责原则(SRP)
描述:就一个类而言,应该仅有 ...
- 2007-05-16 09:28
- 浏览 3487
- 评论(0)