ITPub博客

首页 > IT职业 > IT生活 > clone深拷贝

clone深拷贝

IT生活 作者:devinw 时间:2021-09-09 09:38:16 0 删除 编辑
public class Person implements Cloneable {
    private int age;
    private String name;
    public Person(int age, String name) {
        this.age = age;
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public String getName() {
        return name;
    }

    @Override
    protected Object clone() throws CloneNotSupportedException {
        Person person = (Person) super.clone();
        person.name = new String(name);
        return person;
    }

    public static void main(String[] args) throws CloneNotSupportedException {
        Person p = new Person(23, "wang");
        Person p1 = (Person) p.clone();
        System.out.println(p.getName() == p1.getName());
        System.out.println(p.getName());
        System.out.println(p1.getName());
    }
}

需要实现clone接口,引用还需要再次clone

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/2715/viewspace-2805433/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: 创建Docker私有库
请登录后发表评论 登录
全部评论

注册时间:2019-08-16

  • 博文量
    83
  • 访问量
    760