行为型-模板模式
模板模式就是执行固定的行为。
比如UI的绘制,每个View都需要画顶部,画主体,画底部。
public abstract class UIRenderer {// 模板方法(final防止子类覆盖流程)public final void render() {initPlatform();drawHeader(); // 子类实现drawBody(); // 子类实现drawFooter(); // 子类实现releasePlatform();}// 具体方法(通用逻辑)private void initPlatform() {System.out.println("初始化渲染环境");}private void releasePlatform() {System.out.println("释放平台资源");}// 抽象方法(由子类实现)protected abstract void drawHeader();protected abstract void drawBody();protected abstract void drawFooter();
}
我发现Android开发中,也很多人喜欢这么写,比如:在BaseAvtivity 写一堆init loadview。这种写法一点不清晰,只是代码上方便,耦合度高,属于模板模式的滥用。