c# 原型模式实现方式


一、原型模式简介

原型模式是指一个对象可以通过原型对象中的方法创建更多相同类型的对象,我们将这种操作方式称之为“原型模式”。


二、原型模式应用场景

当一个通过new对象生成一个新的对象非常复杂(需要进行大量的数据准备),此时就需要使用原型模式。
如果一个对象中元素信息都是值类型,那么都是浅拷贝可以高效快速的复制一个全新的对象。


三、原型模式实现

  using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace bossManage
{
     
    #region 类定义
    class baseInfo : System.Object, ICloneable
    {
        public string nameTest = @"这是值类型原始数值"; //值类型 
        public object Clone()
        {
            return new baseInfo() as object; //深拷贝
        }


        public object shallowCopy()
        {
            return this.MemberwiseClone();
        }

        public object thisCopy()
        {
            return this as object;
        }
    }

    #endregion


    public partial class test2 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            #region  原型模式应用
            baseInfo main = new baseInfo();  //源对象             
            baseInfo deepMain = main.Clone() as baseInfo; //通过原型模式生成新的对象 
  
            #endregion

        }
    }
}

相关阅读:
c# 深拷贝 浅拷贝