您现在的位置是:主页 > news > 做网站一定要域名吗/搜索最多的关键词的排名

做网站一定要域名吗/搜索最多的关键词的排名

admin2025/6/2 23:17:17news

简介做网站一定要域名吗,搜索最多的关键词的排名,ashx做网站,山东省两学一做网站在软件系统中,当创建一个类的实例的过程很昂贵或很复杂,并且我们需要创建多个这样类的实例时,可以通过对原来对象拷贝一份来完成创建,这样在内存中不需要创建多个相同的类实例,从而减少内存的消耗和达到类实例的复用。…

做网站一定要域名吗,搜索最多的关键词的排名,ashx做网站,山东省两学一做网站在软件系统中,当创建一个类的实例的过程很昂贵或很复杂,并且我们需要创建多个这样类的实例时,可以通过对原来对象拷贝一份来完成创建,这样在内存中不需要创建多个相同的类实例,从而减少内存的消耗和达到类实例的复用。…

在软件系统中,当创建一个类的实例的过程很昂贵或很复杂,并且我们需要创建多个这样类的实例时,可以通过对原来对象拷贝一份来完成创建,这样在内存中不需要创建多个相同的类实例,从而减少内存的消耗和达到类实例的复用。 然而这个思路正是原型模式的实现方式。下面就具体介绍下设计模式中的原型设计模式。

代码:

public interface ICloneable{object Clone();}[Serializable]public class Department{}[Serializable]class Employee : ICloneable{public string IDCode { get; set; }public int Age { get; set; }public Department Department { get; set; }#region ICloneable 成员/// <summary>/// 浅拷贝/// </summary>/// <returns></returns>public object Clone(){return this.MemberwiseClone();}#endregion/// <summary>/// 深拷贝/// </summary>/// <returns></returns>public Employee DeepClone(){using (Stream objectStream = new MemoryStream()){IFormatter formatter = new BinaryFormatter();formatter.Serialize(objectStream, this);objectStream.Seek(0, SeekOrigin.Begin);return formatter.Deserialize(objectStream) as Employee;}}public Employee ShallowClone(){return Clone() as Employee;}}
View Code

原型模式的优缺点

原型模式的优点有:

  1. 原型模式向客户隐藏了创建新实例的复杂性
  2. 原型模式允许动态增加或较少产品类。
  3. 原型模式简化了实例的创建结构,工厂方法模式需要有一个与产品类等级结构相同的等级结构,而原型模式不需要这样。
  4. 产品类不需要事先确定产品的等级结构,因为原型模式适用于任何的等级结构

原型模式的缺点有:

  1. 每个类必须配备一个克隆方法
  2.  配备克隆方法需要对类的功能进行通盘考虑,这对于全新的类不是很难,但对于已有的类不一定很容易,特别当一个类引用不支持串行化的间接对象,或者引用含有循环结构的时候。

转载于:https://www.cnblogs.com/scmail81/p/8684478.html