模板方法模式

模板:一个抽象类,定义一个模板,在模板中添加步骤,将一样的步骤方法实现,可能不同的步骤等待继承类的实现

继承类:实现模板中不同的方法

模板:

package Template;

/*
 * Create by dapeng on 2018/1/13
 */
abstract class RefreshBeverage {
    public void RegreshBeverageTemplate(){
        //煮沸开水   (通用)
        boil();

        //拿取杯子    (通用)
        getCup();

        //冲饮料
        pourBeverage();

        //加调料
        addSeason();
    }
    //.1
    private   void boil(){
        System.out.print("开水煮好了");
    }
    private void  getCup() {
        System.out.print("杯子拿来了");
    }
    protected abstract void pourBeverage();
    protected abstract void addSeason();


}

继承类:

package Template;

/*
 * Create by dapeng on 2018/1/13
 */
public class Coffee extends RefreshBeverage {
    @Override
    protected void pourBeverage() {
        System.out.print("冲咖啡");
    }

    @Override
    protected void addSeason() {
        System.out.print("加糖");
    }
}

 

posted @ 2018-01-13 16:26  式微胡不归  阅读(109)  评论(0编辑  收藏  举报