.net core 3.1 23种设计模式----原型模式
原型模式(快速构造对象)
原型模式其实就是在创建一个对象之后呢,为了快速构造对象,直接就在之前对象在内存的位置呢,重新克隆了一份,并不需要重新构造
上代码
创建类SingletonYx
public class SingletonYx
{
public int Id { get; set; }
public string Name { get; set; }
private static SingletonYx singleton = new SingletonYx();
public static SingletonYx CreateInstance()
{
return (SingletonYx)singleton.MemberwiseClone(); //克隆
}
}
代码调用
#region 原型模式
SingletonYx sl = SingletonYx.Instance();
sl.Id = 1;
sl.Name = "2222";
SingletonYx s2 = SingletonYx.Instance();
s2.Id = 2;
s2.Name = "3333";
Console.WriteLine(sl.Id + sl.Name);
Console.WriteLine(s2.Id + s2.Name);
#endregion
12222
23333
在上一篇的单例模式中呢,只能全局创建一个对象,如果创建多个的话是不行的
原型模式就是在单例的基础之上呢达到了 可以创建多个,并且不污染对象,而且是快速创建