两种类型的克隆
阅读Bozho的答案 java-recommended-solution-for-deep-cloning-copying-an-instance
关于更快的深拷贝的一些有趣的主题
浅克隆
它是一个对象的逐位副本.创建一个新对象,该对象具有原始对象中值的精确副本.如果对象的任何字段是对其他对象的引用,则仅复制引用.因此,如果要复制的对象包含对其他对象的引用,则浅复制引用相同的子对象.
深度克隆.
深层副本是对象的完整副本.如果对象具有对其他对象的引用,则还会完成这些对象的新副本.深层复制不仅会生成原始对象的原始值的副本,还会生成所有子对象的副本,一直到底部.如果您需要原始对象的真实完整副本,则需要为该对象实现完整的深层副本.
Java支持使用Cloneable接口进行浅层和深层复制,以创建对象的副本.要创建Java对象的克隆,请声明对象实现Cloneable,然后提供标准Java Object基类的clone方法的覆盖.实现Cloneable告诉java编译器您的对象是Cloneable.克隆实际上是通过克隆方法完成的.
创建对象的方法有多少.
归档时间: |
|
查看次数: |
6723 次 |
最近记录: |