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