前言
"铠甲合体......"是不是听着很耳熟啊,小时候我们痴迷过的铠甲勇士。最痴迷过的是第一部和第二部【炎龙侠,风鹰侠,地虎侠,雪獒侠和黑犀侠】第二部是【刑天铠甲,飞鹰铠甲,金刚铠甲】。每一部都很刺激惊险。尤其是在变身的时候,那时候感觉很酷啊。今天再次提到他们是和此模式有关。
模式介绍
模板模式:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。
模板模式主要解决了一些子类都需要重写一些通用方法的事情。那么模板方法将这些方法抽象出来,在抽象类中实现,其他的步骤在子类中实现就可以了。
实例介绍
首先,定义一个抽象类,定义实现的模板方法,供子类继承使用,抽象方法在子类中实现。
然后子类继承父类,重写父类中的抽象方法。
最后主程序调用抽象类中变身方法
优缺点:
优点: 1、封装不变部分,扩展可变部分。 2、提取公共代码,便于维护。 3、行为由父类控制,子类实现。
缺点:每一个不同的实现都需要一个子类来实现,导致类的个数增加,使得系统更加庞大。
使用场景: 1、有多个子类共有的方法,且逻辑相同。 2、重要的、复杂的方法,可以考虑作为模板方法。