首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

Cloneable接口的应用

2012-09-04 
Cloneable接口的使用Cloneable接口声明中没有指定要实现的方法,一个类要实现Cloneable,最好是覆盖Object类

Cloneable接口的使用
Cloneable接口声明中没有指定要实现的方法,一个类要实现Cloneable,最好是覆盖Object类的clone()方法。


1. 如果类没有实现Cloneable接口,调用类对象的clone方法抛出CloneNotSupportedException。



结果是:Johnny Qin 28

对于原型类型(如int),clone是没问题的,被clone的对象改变了不会影响到复制品(age还是28)。

对于引用类型(如Name),clone方法只是复制了引用(浅度就体现在这),如果改变了引用的值,复制品也会受到影响(Johnny Qin)。


4. 继承链上的祖先必须要有一个类声明实现Cloneable接口。

Person person = new Person();Male male = new male();ChineseMale chineseMale = new ChineseMale();person.clone();male.clone();chineseMale.clone();


person.clone()会报错。


5. Object类本身没有实现Cloneable接口,在一个Object类对象上调用clone方法会报CloneNotSupportedException。

热点排行