热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

C#设计模式之工厂模式

把创建对象的事情封装起来usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;

把创建对象的事情 封装起来

using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace DesignPytternDemo{    ///     /// 简单工厂    ///     public interface IFood    {         int Price { get; }    }    public class Orange : IFood    {        public Orange()      来&[email protected]!ma.com搞$代^码%网  {            Console.WriteLine("orange created");        }        public int Price        {            get            {                return 1;            }        }    }    public class Rice : IFood    {        public Rice()        {            Console.WriteLine("rice created");        }        public int Price        {            get            {                return 3;            }        }    }    public static class FoodFactory    {        public static IFood CreateFood(string foodType)        {            IFood f = null;            switch (foodType)            {                case "o":                    f = new Orange();                    break;                case "r":                    f = new Rice();                    break;                default:                    break;            }            return f;        }    }    ///     /// 抽象工厂    ///     public interface IActionGame    {    }    public class Kof : IActionGame    {        public Kof()        {            Console.WriteLine("Kof created");        }    }    public class War3 : IActionGame    {        public War3()        {            Console.WriteLine("War3 created");        }    }    public class Cs : IActionGame    {        public Cs()        {            Console.WriteLine("Cs created");        }    }    public interface IRPG    {    }    public class menghuan : IRPG    {        public menghuan()        {            Console.WriteLine("menghuan created");        }    }    public class Legend : IRPG    {        public Legend()        {            Console.WriteLine("Legend created");        }    }    public class Diablo : IRPG    {        public Diablo()        {            Console.WriteLine("Diablo created");        }    }    public abstract class GameFactory    {        public abstract IActionGame CreateActionGame();        public abstract IRPG CreateRpgGame();    }    public class MyGameFactory : GameFactory    {        public override IActionGame CreateActionGame()        {            return new Kof();        }        public override IRPG CreateRpgGame()        {            return new Legend();        }    }}

以上就是C# 设计模式之 工厂模式的内容,更多相关内容请关注(www.gaodaima.com)!



推荐阅读
author-avatar
卟105932097
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有