您的位置:首页 > 编程语言 > Java开发

java clone()

2015-11-04 16:15 471 查看


java clone()

举报|2012-01-22
09:13——陈宏业—— | 浏览
27201 次

 java
class Employee implements Cloneable
{   public Employee clone() throws CloneNotSupportedException
{      return (Employee)this.clone();
}
public static void main (String[] args) {
Employee ee=new Employee();
try{System.out.println (ee.clone());
}catch(Exception e){
}

}
}
return (Employee)this.clone(); 这个是什么意思?


分享到:



2012-01-22 14:36

#深海寻宝总动员
多重好礼任你选!#

提问者采纳

这是Object对象的clone克隆/复制方法作用是执行后将复制一份当前对象,并返回。

使用clone方法的类必须先实现Cloneable接口,不然clone方法会直接返回CloneNotSupportedException不支持克隆的异常

所以 Employee必须 implements Cloneable
又由于clone方法是Object就具有的,所以可以直接返回return (Employee)this.clone();


评论(10) | 47 3

发布评论2015-5-5 17:51

jenercy不明白为什么要把clone放到Object类里。放到一个指定的类,然后需要克隆的类去继承它不行吗回复2013-9-12 16:22

徐亮头this.clone()应该改为super.clone() ,否则stackoverflow (堆栈内存溢出)回复2013-3-18 09:45

weimu2002你这答案太有用了,大赞呐~回复2012-12-26 16:13

热情的能量是递归。回复2012-9-11 11:26

sjybdzd回答的好专业,厉害!回复

java clone()

举报|2012-01-22 09:13——陈宏业—— | 浏览 27201 次 java
class Employee implements Cloneable
{   public Employee clone() throws CloneNotSupportedException
{      return (Employee)this.clone();
}
public static void main (String[] args) {
Employee ee=new Employee();
try{System.out.println (ee.clone());
}catch(Exception e){
}

}
}
return (Employee)this.clone(); 这个是什么意思?
分享到:2012-01-22 14:36#深海寻宝总动员 多重好礼任你选!#提问者采纳
这是Object对象的clone克隆/复制方法作用是执行后将复制一份当前对象,并返回。

使用clone方法的类必须先实现Cloneable接口,不然clone方法会直接返回CloneNotSupportedException不支持克隆的异常

所以 Employee必须 implements Cloneable
又由于clone方法是Object就具有的,所以可以直接返回return (Employee)this.clone();
评论(10) | 47 3

发布评论

2015-5-5 17:51

jenercy

不明白为什么要把clone放到Object类里。放到一个指定的类,然后需要克隆的类去继承它不行吗回复

2013-9-12 16:22

徐亮头

this.clone()应该改为super.clone() ,否则stackoverflow (堆栈内存溢出)回复

2013-3-18 09:45

weimu2002

你这答案太有用了,大赞呐~回复

2012-12-26 16:13

热情的能量

是递归。回复

2012-9-11 11:26

sjybdzd

回答的好专业,厉害!回复
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: