码迷,mamicode.com
首页 > 编程语言 > 详细

java——对象的克隆

时间:2016-04-03 23:41:07      阅读:213      评论:0      收藏:0      [点我收藏+]

标签:

对象的克隆

  当拷贝一个变量时,原始变量与拷贝变量引用同一个对象,这就就是说,改变一个变量所引用的对象将会对另外一个变量产生影响。如下图:

技术分享

//拷贝
Employee original = new Employee("jim", 10000);
Employee copy = orginal;

//克隆
Employee copy = original.clone();

clone()方法是object类的一个proteced方法,也就是说,在用户编写的代码中不能直接调用它。只有Employee类才能克隆Employee对象。默认的克隆操作是浅拷贝,它并没有克隆包含在对象中的内部对象。

技术分享

深拷贝的实现:

//深拷贝
class Employee implements Claoneable{
    //实现深拷贝
    public Employee clone() throws CloneNotSupportedException{//抛出异常
        Employee cloned = (Employee) super.clone();
        
        cloned.hireDay = (Date) hireDay.clone();

        return cloned;
    }
    
} 

 

java——对象的克隆

标签:

原文地址:http://www.cnblogs.com/rsdqc/p/5351053.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!