当前位置: 代码迷 >> J2SE >> 关于clone的有关问题
  详细解决方案

关于clone的有关问题

热度:171   发布时间:2016-04-24 12:35:50.0
关于clone的问题
-----------------------原话-----------------------
在Object类中,clone方法被声明为protected,因此无法直接调用anObject.clone()。
-----------------------------------------------------
这句话是什么意思啊 不是说protected方法的话 子类和同一个包里的类就可以使用吗
我想那个anObject就是子类吧 为什么无法直接调用呢?

------解决方案--------------------
clone():
返回:
此实例的一个克隆。 
抛出: 
CloneNotSupportedException - 如果对象的类不支持 Cloneable 接口,则重写 clone 方法的子类也会抛出此异常,以指示无法克隆某个实例。

------解决方案--------------------
Java code
//只有实现了Cloneable接口的类,其对象才能调用Clone()方法// Object 类本身不实现接口 Cloneable,//所以在类为 Object 的对象上调用 clone 方法将会导致在运行时抛出异常public class TestClone {    public static void main(String[] args) {    new SubClass().clone();     }}class SubClass implements Cloneable {//子类实现接口Cloneable    public Object clone() {    SubClass subClass = null;    try {        System.out.println("你正在调用clone()方法");        subClass = (SubClass) super.clone();    } catch (CloneNotSupportedException e) {        e.printStackTrace();    }    return subClass;    }}/*output:你正在调用clone()方法*/
  相关解决方案