对称拷贝就是将一个对象的属性拷贝到另一个类有着相同类类型的对象中
浅拷贝
浅拷贝就是按位拷贝对象,它会创建一个新的对象,这个对象有着原始对象属性值的一份精确拷贝,如果属性是基本类型,拷贝的就是基本类型的值,如果属性是引用类型,拷贝的就是内存地址值,因此如果其中一个对象改变了这个地址就会影响其他的对象
用demo来测试下
public class ShallowCopyTest {
public static void main(String[] args) {
Stu stu = new Stu("张三","Android开发");
System.out.println("name-->"+stu.getName()+"subjectName="+stu.getSubject().getName());
//拷贝对象
try {
Stu stu1 = (Stu) stu.clone();
System.out.println("拷贝name-->"+stu1.getName());
System.out.println("拷贝subjectName="+stu1.getSubject().getName());
System.out.println("对比二个对象是否相等-->"+(stu==stu1));
System.out.println("对比浅拷贝中的引用类型是否相等-->"+(stu.getSubject()==stu1.getSubject()));
//修改原始数据中的name
s