【模板方法模式】个人理解好像就是简单的父类是抽象类然后子类稍稍拓展一下,额,可以说是经常用到的吧。
上代码(继续装电脑~)
using UnityEngine;
/// <summary>
/// 设计模式——模板方法模式
/// </summary>
public class DesignMode_TemplateMode : MonoBehaviour {
// Use this for initialization
void Start () {
Lenevo ln = new Lenevo();
ln.ChoiceGrand();
ln.CreateComputer();
HP hp = new HP();
hp.ChoiceGrand();
hp.CreateComputer();
}
}
/// <summary>
/// 组装电脑的模板
/// </summary>
public abstract class MakeComputer
{
public void CreateComputer()
{
AddCPU();
AddGPU();
AddRAM();
}
public void AddCPU()
{
Debug.Log("装上CPU");
}
public void AddGPU()
{
Debug.Log("装上显卡");
}
public void AddRAM()
{
Debug.Log("装上内存条");
}
public abstract void ChoiceGrand();
}
public class Lenevo:MakeComputer
{
public override void ChoiceGrand()
{
Debug.Log("联想");
}
}
public class HP : MakeComputer
{
public override void ChoiceGrand()
{
Debug.Log("惠普");
}
}
结果: