ntwo

导航

.Net Framework中使用的模式-Prototype模式

标准结构

prototype

.net中通过实现ICloneable接口就可以实现Prototype模式。Clone可以实现浅拷贝和深拷贝。

class ShadowCopyObject : ICloneable {
    object _member = new object();

    public Object Member
    {
        get { return _member; }
    }

    public Object Clone()
    {
        return this.MemberwiseClone();
    }
}

class DeepCopyObject : ICloneable {
    object _member;

    DeepCopyObject(object member)
    {
        _member = member;
    }

    public Object Member
    {
        get { return _member; }
    }

    public Object Clone()
    {
        return new DeepCopyObject(_member);
    }
}

posted on 2010-11-08 16:20  9527  阅读(240)  评论(0编辑  收藏  举报