Unity 设计模式之 工厂方法模式的实例介绍

2025-04-12 23:08:10

1、打开Unity,新建一个空工程,具体如下图

Unity 设计模式之 工厂方法模式的实例介绍

2、在工程中,新建几个脚本,然后双击打开,具体如下图

Unity 设计模式之 工厂方法模式的实例介绍

3、脚本的具体代码和代码说明如下图

Unity 设计模式之 工厂方法模式的实例介绍
Unity 设计模式之 工厂方法模式的实例介绍
Unity 设计模式之 工厂方法模式的实例介绍
Unity 设计模式之 工厂方法模式的实例介绍
Unity 设计模式之 工厂方法模式的实例介绍
Unity 设计模式之 工厂方法模式的实例介绍
Unity 设计模式之 工厂方法模式的实例介绍

4、Product 脚本具体内容如下:///<summary>///抽象产品,定义工厂方法中所创建的对象///</summary>publicabstractclassProduct{//构造函数 publicProduct(){}publicabstractvoidOperation();}

5、ProductA脚本具体内容如下:usingUnityEngine;///<summary>///具体产品A,继承自Product///</summary>publicclassProductA:Product{publicProductA(){}publicoverridevoidOperation() { Debug.Log("产品A"); }}

6、ProductB脚本具体内容如下:usingUnityEngine;///<summary>///具体产品B,继承自Product///</summary>publicclassProductB:Product{publicProductB(){}publicoverridevoidOperation() { Debug.Log("产品B"); }}

7、Factory脚本具体内容如下:///<衡痕贤伎summary>///抽象工厂,声明了一个创建Product的方法///</summary>publicabstractclassFactory{///<summary> ///该方法用来返回Product产品 ///</summary> ///<returns>Theproduct.</returns> publicabstractProductCreateProduct();}

8、ProductAFactory脚本具体内容如下:///<summary>///具体产工厂,产品类A的创建者,继承自抽象工厂Creator///</summary>publicclassProductAFactory:Factory{publicoverrideProductCreateProduct() { returnnewProductA(); }}

9、ProductBFactory脚本具体内容如下:///<summary>///具体产工厂,产品类B的创建者,继承自抽象工厂Creator///</summary>publicclassProductBFactory:Factory{publicoverrideProductCreateProduct() { returnnewProductB(); }}

10、Test脚本具体内容如下:usingUnityEngine;publicc盟敢势袂lassTest:MonoBehaviour{//Usethisforinitialization voidStart(){ } //Updateiscalledonceperframe voidUpdate(){//生成产品A if(Input.GetKeyDown(KeyCode.A)){ FactoryAFactory=newProductAFactory(); ProductproductA=AFactory.CreateProduct();productA.Operation(); }//生成产品B if(Input.GetKeyDown(KeyCode.B)){ FactoryBFactory=newProductBFactory(); ProductproductB=BFactory.CreateProduct();productB.Operation(); } }}

11、脚本编译正确,回到Unity界面,在场景中新建一个 GameObject,并把 Test 脚本赋给 GameObject,具体如下图

Unity 设计模式之 工厂方法模式的实例介绍

12、运行场景,分别按下 A、B 键,控制台 Console 打印如下图

Unity 设计模式之 工厂方法模式的实例介绍

13、到此,《Unity 设计模式之 工厂方法模式的实例介绍》讲解结束,谢谢

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢