概念 1.一個抽象父類,N 個實現(xiàn)類 2.一個工廠類, 負(fù)責(zé)生產(chǎn) (new 對象) 簡單工廠模式的優(yōu)點: 1.實現(xiàn)了對象的創(chuàng)建和使用的分離 2.記住主要的參數(shù)即可,減少使用者的記憶量 缺點: 1.工廠類的職責(zé)過重,一旦不能工作,系統(tǒng)將受到影響 2.增加了類的個數(shù),復(fù)雜度和理解度增加 3.違反了"開閉原則", 添加新的東東需要增加工廠邏輯,工廠會越來越復(fù)雜 具體代碼如下: //枚舉 Type 的類型 public enum PhoneType { XiaoMI, IPhone, HuaWei } //繼承MonoBehaviour public class SingleFactory : MonoBehaviour { void Start () { Phone pe = PhoneFactory.CreatPhone(PhoneType.HuaWei); pe.Print(); } void Update () { } } // 一個抽象父類 public abstract class Phone { public abstract void Print(); } //小米實現(xiàn)類 public class XiaoMI : Phone { public override void Print() { Debug.Log("小米手機"); } } //蘋果手機實現(xiàn)類 public class IPhone : Phone { public override void Print() { Debug.Log("蘋果手機"); } } //華為手機實現(xiàn)類 public class HuaWei : Phone { public override void Print() { Debug.Log("華為手機"); } } //一個工廠類 public static class PhoneFactory { public static Phone CreatPhone(PhoneType type) { Phone phone = null; switch (type) { case PhoneType.XiaoMI: phone = new XiaoMI(); break; case PhoneType.IPhone: phone = new IPhone(); break; case PhoneType.HuaWei: phone = new HuaWei(); break; } return phone; } }
|
|