草叶睡蜢

导航

面向对象基础知识-四、对象复制

四、对象复制

对象的复制是指把一个现有的对象克隆一份,得到一个新的对象,新老对象是完全独立的

4.1 对象的浅复制(shallow copy)

使用简单的字段值拷贝方法复制一个对象
image

4.2 深度复制(Deep Copy)

4.2.1 浅复制的问题

浅复制的问题是无法复制出真正独立的新对象,如下图所示。
image

4.2.2 对象的深度复制

深度复制(Deep Copy)在复制对象时会把其所包含的内部对象也复制一份,并且这个过程是递归进行的,如下图所示。
image

4.2.3 深度复制实现方式

  • ICloneable接口
    通过.Net基类库提供的ICloneable接口实现所有需要实现深度复制的对象。
    image

posted on 2021-10-18 11:45  草叶睡蜢  阅读(98)  评论(0编辑  收藏  举报