模板方法模式如何实现

参考答案

模板方法模式的实现源码:

例如:

将水果放入冰箱。

我要放一个苹果:开冰箱门 → 放苹果 → 关冰箱门;

我要再放一个梨:开冰箱门 → 放梨 → 关冰箱门。

可见,放水果这个行为模式是一样的,只是存放的水果品种不同。此时就适用模板方法模式来解决这个问题。

/\* \* 添加模板方法 \*/
abstract class Refrigerator {
    public void open() {
        System.out.println("开冰箱门");
    }
    public abstract void put();

    public void close() {
        System.out.println("关冰箱门");
    }
}
class Banana extends Refrigerator {
    @Override
    public void put() {
        System.out.println("放苹果");
    }
}
class Apple extends Refrigerator {
    @Override
    public void put() {
        System.out.println("放梨");
    }
}
/\* \* 调用模板方法 \*/
public class TemplateTest {
    public static void main(String[] args) {
        Refrigerator refrigerator = new Banana();
        refrigerator.open();
        refrigerator.put();
        refrigerator.close();
    }
}

结果:

开冰箱门

放苹果

关冰箱门

 

以上,是Java面试题【模板方法模式如何实现】的参考答案。

输出,是最好的学习方法

欢迎在评论区留下你的问题、笔记或知识点补充~

—end—

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧