模板模式 Template Method Pattern
模板模式通常又叫模板方法,是指定义一个算法的骨架,并允许子类为其中的一个或者多个步聚提供实现。
优点:
- 1.利用模板方法可以将相同处理逻辑的代码放到抽象父类中,可以提高代码的复用性。
- 2.将不同的代码放在不同子类中,通过对子类的扩展增加新的行为,提高代码的可扩展性。
- 3.把不变的行为写在父类上,去除子类重重的代码,提供一个很好的代码复用平台,符合开闭原则。
缺点
- 1.类数目的增加,每一个抽象类都需要一个子类来实现,这样导致类的个数增加。
- 2.类数目的增加,间接地增加了系统实现的复杂度。
- 3.继承系统自身缺点,如果父类添加了新抽象方法,所有子类都要改一遍。
public class AbstractClass {
protected void step1()
{
System.out.println("AbstractClass step1");
}
protected void step2()
{
System.out.println("AbstractClass step2");
}
protected void step3()
{
System.out.println("AbstractClass step3");
}
public final void templateMethod()
{
this.step1();
this.step2();
this.step3();
}
}