Object 中的 clone方法怎么用? 谁能给个例子 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这个方法你得重写,object的方法不是万能的 不能用,那是protected.供你自己的类使用public Object clone()覆盖. 重写就好了,呵呵!按照你的要求copy一些变量,看你是深复制or浅复制 l clone的实现1.实现Cloneable接口通过上一篇的介绍,我们知道,一个类若要具备clone功能,就必须实现Cloneable接口。做到这一步,clone功能已经基本实现了。Clone功能对我们来说,最主要的还是要能够使用它。那么我们如何才能使用clone功能呢?答案是覆盖Object#clone()方法。2. 覆盖Object#clone()方法为什么需要覆盖Object#clone()方法?这里得再次从jdk源码说起。JDK中Object# clone()方法的原型是:protected native Object clone() throws CloneNotSupportedException;是否注意到,这里clone()方法修饰符是protected,而不是public。这种访问的不可见性使得我们对Object#clone()方法不可见。相信读者已明白为什么要覆盖Object#clone()方法。而且,覆盖的方法的修饰符必须是public,如果还保留为protected,覆盖将变得没有实际意义。下面举一个具有clone功能的简单的例子:/* * 具有clone功能的类的例子*/public class CloneableObjExample implements Cloneable {//……部分代码已省略…… private String name = null;private int score = 0; /** * NOTE: 将protected 修饰符 更改为 public* @see java.lang.Object#clone() */ public/*protected*/ Object clone() throws CloneNotSupportedException { // call父类的clone方法 Object result = super.clone(); //TODO: 定制clone数据 return result;}}3.定制clone至此,clone已经真相大白。Clone的对象我们可以对其进行定制。还就上面的例子来说。下面的方法对功能做了一定的增强:public/*protected*/ Object clone() throws CloneNotSupportedException { // call父类的clone方法 CloneableObjExample result = (CloneableObjExample)super.clone(); //TODO: 定制clone数据 //虽然”clone”了,但还可以做点调整 result.name = “New Name”; result.score = 90; return result;} 输出两个数组的相同元素(用最优算法) private 问题 怎样选定列啊?我刚学JTable,看了些资料 + 查API还是没搞懂怎么弄,请大家帮忙啊 SCJP问题(6)-关于线程 关于jar打包的问题,在线等! 一个Socket的问题 关于swing中JTextField限长的问题 java绘图:求AutoCAD绘图的鼠标控制方法 java对外接口开发 绝对高分请教:关于记录集 请问在JAVA中对象在栈内存中的引用存放的是该对象对应的HASH编码还是内存地址? hashmap加上synchonize与hashtable有啥区别
按照你的要求copy一些变量,
看你是深复制or浅复制