面向对象深入:继承05——对象的复制

11.6  对象的复制

一、"=" 赋值,将指向对象的地址复制

同个类的不同 对象引用 之间可以任意相互赋值。

SonClass s1,s2;        //定义两个相同类型的变量
s1=new SonClass();
s2=s1;                        //通过s2=s1,按照s1的空间给s2开辟相同的空间,并赋以相同的值

s1,s2中的值是指向对象的地址,也就是说s1,s2指向相同的对象。

实验结果表明sc1,sc2指向同一个对象,用 sc2.i 改变 i 的值,sc1.i 的值跟着变。

二、采取继承接口Cloneable,并覆盖clone()方法,完成对象的复制

不同于“=”,接口Cloneable的clone()方法是将整个对象复制

原文地址:https://www.cnblogs.com/jolene-wu/p/8296170.html