关于java 浅表复制 深层复制

来源:百度知道 编辑:UC知道 时间:2024/09/25 17:15:35
如何使用浅表复制
如何使用深层复制
请各给出一段代码 来解释
越详细越好

浅表复制是指只复制一层,不会再次复制下级对象。

比如:A 包括一个B对象,那么浅表复制相当于:
clone ()
{
a = new A () ;
a.B = this.B
}

而深层复制就是:

clone ()
{
a = new A () ;
a.B = this.B.clone () ;
}

也就是说:复制B的引用还是创建新的B的实例的问题。
你用字符串不好说明。如果换成object,你看他的输出结果就是一样的了。而如果深度复制,结果就会不同。