编程艺术之模板方法模式


    在模板方法模式里讲的是选择题抄写的程序,在这个小程序里,如果不注意方法的使用的话,就会出现很多重复的代码,这样就导致了代码量大,容易出错,却不容易修改维护。但是用了模板方法就避免了这些错误。

    一、考题抄写

    试题中有很多重复的地方,所以我们要做的就是避免写重复的代码。重复的代码应该应用到继承这一思想来避免重复的代码,我觉得这就是写一次代码可重复用,在复用的时候需要修改的地方还要可以改动。官方一定就是,子类的模板,所有重复的代码都应该要上升到父类去,而不是让每个子类都去重复。在试题抄写这个小程序里,模板方法的使用就体现在增加一个虚方法,这个方法的目的就是给继承的子类重写,因为这里每个人的答案都是不同的。然后子类就很简单了,重写虚方法后就把答案填上就行了,其他就不用管了。

    二、模板方法模式

    那什么是模板方法模式呢,模板方法模式定义了一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。

               

    那什么时候用模板方法呢?模板方法模式就是提供了一个很好的代码复用平台。当要完成在某一细节层次一致的一个过程或一系列步骤,但其个别在更详细的层次上实现可能不同时,这个时候就应该考虑用模板方法模式来处理。

    那什么是模板方法模式有什么特点呢?模板方法模式是通过把不变行为搬移到超类,去除子类中的重复代码来体现它的优势。当不变的和可变的行为在方法的子类实现中混合在一起的时候,不变的行为就会在子类中重复出现。通过模板方法把这些行为搬移到单一的地方,这样就帮助子类摆脱重复的不变行为的纠缠。

    三、总结

    我觉得模板方法模式主要体现继承和多态这两种思想,子类继承父类,在进行同样的行为时这些子类会有不一样的结果。

评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值