精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2007-09-03
提前声明,俺写的这个只供大家学习和交流,欢迎各位给与补充、建议及意见。1.Template Method (模板方法) 设计模式的核心思想:抽象类规定业务逻辑,实际的处理由子类完成。 2.让我们来看看这个设计模式是怎么来设计的: 父类定义了抽象方法和业务逻辑,子类呢去实现父类定义的抽象方法,但是如果我们只知道抽象父类是不能够了解业务是如何实现的,我们必须借助于子类,应为它们实现了父类定义的抽象方法。打个不恰当的比方:这就像是往一块大的黑板画东西一样。
3.例子
此时在其它类里我们就可以用一个父类的应用指向一个CharDisplay 的事列,如: AbstractDisplay dis=new CharDisplay ('A'); 那么我们就可以这样了: dis.display(); 那么此时控制台就会打印出:{AAAAAA} 现在应该明白了吧,在这里需要注意的是:父类定义的业务逻辑display()方法是final的,这就保证了避免子类对它的修改。还有就是你可以写多个子类,完成不同的功能,现在也因该明白了,只知道父类不知道子类既不会明白业务的说法了吧。 还有就是Spring 中那个模板切面也无非就用了这个模式。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
浏览 2090 次