码迷,mamicode.com
首页 > 编程语言 > 详细

模板方法模式(think in java中的设计模式)

时间:2017-06-29 17:57:28      阅读:143      评论:0      收藏:0      [点我收藏+]

标签:nes   abs   book   rgs   color   []   package   class   模块   

模板方法模式:模板方法模式顾名思义就是一种构造模块化的设计模式。将一次行为分为多种行为,灵活的调用不同模块进行工作。比如在饭店吃饭,分为:点菜,吃饭,买单等行为无论什么饭店大致都是这三种行为。因此我们可以构建抽象类饭店吃饭,然后根据不同的饭店修改吃菜的这个步达到效果。他是一种类行为模式.。

package com.hhdeng.controller;

public class Test {
    public static void main(String[] args){
        HaveDinner hd=new HaveDinner();
        hd.HaveEatDinner(new ChineseFood());
        hd.HaveEatDinner(new JapanFood());
    }
    
    
}
class HaveDinner{
    public void HaveEatDinner(Dinner D){
        D.book();
        D.eat();
        D.pay();
    }
}
abstract class  Dinner{
    public abstract void eat();
    public  void book(){
        System.out.println("订单点菜");
    }
    public  void pay(){
        System.out.println("订单付款");
    }
}
class JapanFood extends Dinner{
    @Override
    public void eat() {
        System.out.println("吃寿司,吃鱼生");
    }
}
class ChineseFood extends Dinner{
    @Override
    public void eat() {
        System.out.println("吃米饭,吃麻婆豆腐");
    }
}

 

模板方法模式(think in java中的设计模式)

标签:nes   abs   book   rgs   color   []   package   class   模块   

原文地址:http://www.cnblogs.com/blackdeng/p/7094577.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!