【软考学习】设计模式——原型模式

来源:互联网 发布:c语言最小公倍数算法 编辑:程序博客网 时间:2024/06/03 20:13

【背景】
设计模式是非常重要的一块知识,每个设计模式都值得深入了解和学习。
【内容】
原型设计模式总结:
    一、定义:用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。

    二、UML结构图:


     三、代码实现:

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace 原型模式_基本代码{    class Program    {        static void Main(string[] args)        {            ConcretePrototype1 p1 = new ConcretePrototype1("I");            ConcretePrototype1 c1 = (ConcretePrototype1)p1.Clone();            Console.WriteLine("Cloned:{0}", c1.Id);                        ConcretePrototype2 p2 = new ConcretePrototype2("II");            ConcretePrototype2 c2 = (ConcretePrototype2)p2.Clone();            Console.WriteLine("Clone:{0}", c2.Id);            Console.Read();        }    }    //原型类    abstract class Prototype    {        private string id;        public Prototype(string id)        {            this.id = id;        }        public string Id        {            get { return id; }        }        public abstract Prototype Clone();    }    // 具体原型类    class ConcretePrototype1 : Prototype    {        public ConcretePrototype1(string id)            : base(id)        {         }        public override Prototype Clone()        {            return (Prototype)this.MemberwiseClone();        }    }    class ConcretePrototype2 : Prototype    {        public ConcretePrototype2(string id)            :base(id)        {        }        public override Prototype Clone()        {            return (Prototype)this.MemberwiseClone();        }    }}



原创粉丝点击