您的位置:首页 > 编程语言

设计模式之原型模式代码示例

2012-08-26 22:24 549 查看
using System;

namespace CloneFunc{

abstract class Prototype{
string id;
public string Id{
get{return this.id;}
set{this.id = value;}
}

public Prototype(string Id){
this.id = Id;
}

public abstract Prototype Clone();
}

class ConcretePrototype1 : Prototype{

public override Prototype Clone(){
return (ConcretePrototype1)this.MemberwiseClone();
}
public ConcretePrototype1(string id) : base(id){
}
}

class EntryPoint{
public static void Main(){
ConcretePrototype1 c1 = new ConcretePrototype1("i");
ConcretePrototype1 cc = c1.Clone() as ConcretePrototype1;
Console.WriteLine(cc.Id + "------" + cc.ToString());
Prototype c2 = new ConcretePrototype1("ii");
Console.WriteLine(c2.Id + "------" + c2.ToString());
bool result = object.ReferenceEquals(cc,c2);
Console.WriteLine(result.ToString());
Console.Read();
}
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: