栏目分类:
子分类:
返回
终身学习网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
终身学习网 > IT > 软件开发 > 后端开发 > Java

Java 的浅拷贝和深拷贝

Java 更新时间:发布时间: 百科书网 趣学号
class Money implements Cloneable{
    public double money = 99.9;

    @Override
    protected Object clone() throws CloneNotSupportedException {
        return super.clone();
    }
}
class Person implements Cloneable {
    public int age = 10;
    public Money m = new Money();

    @Override
    protected Object clone() throws CloneNotSupportedException {
       Person tmp = (Person) super.clone();
        tmp.m = (Money) this.m.clone();
        return tmp;
    }

    @Override
    public String toString() {
        return "Person{" +
                "age=" + age +
                '}';
    }
}

public class Test {
    public static void main(String[] args) throws CloneNotSupportedException {
        Person person1 = new Person();
        Person person2 = (Person) person1.clone();
        System.out.println(person1.age + " " + person2.age);
        person2.age = 20;
        System.out.println(person1.age + " " + person2.age);
        System.out.println("-------------------------");

        Person person3 = new Person();
        Person person4 = (Person) person3.clone();
        System.out.println(person3.m.money+" "+ person4.m.money);
        person3.m.money = 99;
        System.out.println(person3.m.money+" "+ person4.m.money);
        System.out.println("----------------------------");

        Person person5 = new Person();
        Person person6 = (Person) person5.clone();
        System.out.println(person5.m.money+" "+ person6.m.money);
        person5.m.money=11.11;
        System.out.println(person5.m.money+" "+ person6.m.money);

    }
}

  

 

转载请注明:文章转载自 www.051e.com
本文地址:http://www.051e.com/it/888966.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 ©2023-2025 051e.com

ICP备案号:京ICP备12030808号