java设计模式之模板方法a模式

来源:互联网 发布:qq空间留言软件 编辑:程序博客网 时间:2024/05/03 06:50

模板方法模式可以用来封装算法。将完成一定目标所需的全部方法都封装到一个方法中,封装起来,可以将其声明为final的,避免子类去复写它。其内每个单独的方法如果是共同的则在超类中实现,若不同则在超类中将其声明为抽象的由子类去实现它。不同的子类会有不同的实现方式。从而减少了对子类的依赖。

模板方法定义了一个算法的步骤,并允许子类为一个或多个步骤提供实现。

模板方法模式:在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以再不改变算法结构的情况下,重新定义算法中的某些实现。

在超类中也可以有“默认不做事的方法”,称为“钩子”,子类能够决定要不要覆盖它。如果子类不提供自己的方法,抽象类会提供一个默认的实现。

0 0
原创粉丝点击