当前位置: 首页 > news >正文

怎么创建自己的公司网站注册安全工程师考试

怎么创建自己的公司网站,注册安全工程师考试,优化百度百科,怎么实现网站建设报价方案C#开发常见面试题三(浅复制和深复制的区别) 一.浅复制和深复制定义 #xff08;1#xff09;浅复制#xff1a;复制一个对象的时候#xff0c;仅仅复制原始对象中所有的非静态类型成员和所有的引用类型成员的引用。#xff08;新对象和原对象将共享所有引用类型成员的实…C#开发常见面试题三(浅复制和深复制的区别) 一.浅复制和深复制定义 1浅复制复制一个对象的时候仅仅复制原始对象中所有的非静态类型成员和所有的引用类型成员的引用。新对象和原对象将共享所有引用类型成员的实际对象 2深复制复制一个对象的时候不仅复制所有非静态类型成员还要复制所有引用类型成员的实际对象。 在.NET中基类System.Object已经为所有类型都实现了浅复制类型所要做的就是公开一个复制的接口而通常的这个接口会由ICloneable接口来实现。ICloneable只包含一个方法Clone该方法既可以被实现为浅复制也可以被实现为深复制具体如何取舍则根据具体类型的需求决定。此外在Sys-tem.Object基类中有一个保护的MemeberwiseClone()方法它便用于进行浅度复制。 二.代码理解 public object Clone(){ return MemberwiseClone();} 实例 public class DeepCopy : ICloneable{public int i 0;public A a new A();public object Clone(){// 实现深复制-方式1依次赋值和实例化DeepCopy newObj new DeepCopy();newObj.a new A();newObj.a.message this.a.message;newObj.i this.i;return newObj;}public new object MemberwiseClone(){// 实现浅复制return base.MemberwiseClone();}public override string ToString(){string result string.Format(I的值为{0},A为{1}, this.i.ToString(), this.a.message);return result;}}public class A{public string message 我是原始A;}public class Program{static void Main(string[] args){DeepCopy dc new DeepCopy();dc.i 10;dc.a new A();DeepCopy deepClone dc.Clone() as DeepCopy;DeepCopy shadowClone dc.MemberwiseClone() as DeepCopy;// 深复制的目标对象将拥有自己的引用类型成员对象deepClone.a.message 我是深复制的A;Console.WriteLine(dc);Console.WriteLine(deepClone);Console.WriteLine();// 浅复制的目标对象将和原始对象共享引用类型成员对象shadowClone.a.message 我是浅复制的A;Console.WriteLine(dc);Console.WriteLine(shadowClone);Console.ReadKey();}} 执行结果 三.如何实现深复制 1.逐个复制 2.序列化实现深复制 [Serializable]public class DeepCopy : ICloneable{......public object Clone(){// 实现深复制-方式1依次赋值和实例化//DeepCopy newObj new DeepCopy();//newObj.a new A();//newObj.a.message this.a.message;//newObj.i this.i;//return newObj;// 实现深复制-方式2序列化/反序列化BinaryFormatter bf new BinaryFormatter(); MemoryStream ms new MemoryStream(); bf.Serialize(ms, this); ms.Position 0; return bf.Deserialize(ms);}......}[Serializable]public class A{public string message 我是原始A;} PS一般可被继承的类型应该避免实现ICloneable接口因为这样做将强制所有的子类型都需要实现ICloneable接口否则将使类型的深复制不能覆盖子类的新成员。 复习一下基础知识。
http://www.hkea.cn/news/14431784/

相关文章:

  • 官方网站建设建议揭阳高端网站建设价格
  • 软件下载网站源码竞价单页网站制作
  • 哈尔滨做网站的价格wordpress分类主题模板下载
  • 国内摄影作品网站上海建站网
  • 法律平台网站建设方案制作一个网站并上传访问
  • 肇庆建设银行招聘网站设计建设网站哪家好
  • 找人做seo要给网站程序学做网站学费
  • 社交网站只做商标设计logo图案设计软件
  • 网站单页站群网站描述优化
  • 哪个网站可以做前端项目预约网站制作
  • 做win精简系统的网站wordpress添加登录
  • 润滑油东莞网站建设技术支持国际外贸网站推广
  • godaddy网站建设怎么样南同网站建设
  • 线上营销网站设计做外贸有效的网站
  • 百度网站的优势wordpress主题modown
  • 建设网站二级子页打不开php做的网站论文
  • 成都网站建设 lkcms厅网站建设中标公告
  • 网站建设客户需求猎聘网网站谁做的
  • 网站托管服务适合wordpress代码上传到服务器
  • 2018网站做外链西安到北京
  • 成都网站建设天府软件园华为网站的建设建议
  • 网站出租建设wordpress娱乐主题yeti 1.9.2
  • 怎么做网站图片链接注册商标查询网
  • 建网站要定制还是第三方系统发软文提高网站权重
  • 做交易网站需要多少钱如何查找昆明公司的网站
  • 农业基本建设项目信息网站我自己怎么建网站
  • 网站开发郑州外贸做的社交网站有哪些
  • 网站建 设方案说明书wordpress单页下载
  • 商商业网站建设工程建设项目施工招标投标办法
  • 自己做网站需要服务器建网站公司成都