设计模式-7-原型模式
Posted MancosZeng
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了设计模式-7-原型模式相关的知识,希望对你有一定的参考价值。
说明
通过对自身的浅层的克隆和深层的克隆,能在短期大量生成不同内存区域的相同值的对象
public class PrototypeA { public int i { get; set; } public List<string> lstr { get; set; } public PrototypeA() { lstr = new List<string>(); } public PrototypeA Clone() { PrototypeA entity = (PrototypeA)this.MemberwiseClone(); entity.lstr = ((string[])this.lstr.ToArray().Clone()).ToList(); return entity; } public void Print() { foreach(var str in lstr) { Console.WriteLine(str); } Console.WriteLine(i); } } Console.WriteLine("---------------"); PrototypeA prototypeA = new PrototypeA(); prototypeA.i = 5; prototypeA.lstr.Add("1"); prototypeA.Print(); Console.WriteLine("---------------"); var proB = prototypeA.Clone(); proB.Print(); Console.WriteLine("---------------"); proB.i = 7; proB.lstr.Add("2"); proB.Print(); Console.WriteLine("---------------"); prototypeA.Print();
以上是关于设计模式-7-原型模式的主要内容,如果未能解决你的问题,请参考以下文章