(学习笔记)设计模式之模版方法

来源:互联网 发布:数学建模数据分析 编辑:程序博客网 时间:2024/06/05 16:36

在某个步骤,所有的事物进行步骤相同,只有其中一两个有区别可以用模版方法;

比如去餐馆吃饭,所有人都是点菜,吃东西,结账。只有点餐的过程是有区别的。


public class DM04TempleMethod : MonoBehaviour{    private void Start()    {        Ipeople people = new SouthPeople();        people.Eat();    }}    public abstract class Ipeople{    public void Eat()    {        OrderFood();        EatSomething();        PayBill();    }    protected virtual void OrderFood()//点菜    {            }    private void EatSomething()    {        Debug.Log("吃东西");    }    private void PayBill()    {        Debug.Log("买单");    }}public class NorthPeople:Ipeople{    protected override void OrderFood()    {        Debug.Log("我在点面条");    }}public class SouthPeople:Ipeople{    protected override void OrderFood()    {        Debug.Log("我在点米饭");    }}