2024年8月26日
模板方法是一种行为设计模式。模板方法设计模式用于创建方法存根并将某些实现步骤推迟到子类。
模板方法设计模式
模板方法定义了执行算法的步骤,它可以提供所有或部分子类通用的默认实现。让我们通过一个例子来理解这种模式,假设我们想提供一种建造房屋的算法。建造房屋需要执行的步骤是 - 打地基、建柱子、建墙壁和窗户。重要的一点是我们不能改变执行的顺序,因为我们不能在打地基之前建窗户。所以在这种情况下我们可以创建一个模板方法,使用不同的方法来建造房屋。现在,建造房屋地基的方法对于所有类型的房屋都是一样的,无论是木屋还是玻璃屋。所以我们可以为此提供基本实现,如果子类想要重写这个方法,他们可以,但大多数情况下它对所有类型的房屋都是通用的。为了确保子类不会重写模板方法,我们应该将其设为 final。
模板方法抽象类
由于我们希望某些方法由子类实…