覆盖Java中的Clone()方法

时间:2017-12-30 10:07:35

标签: java interface compiler-errors clone cloneable

我知道我应该实现Cloneable接口,然后在Test中覆盖Object类的clone()方法,这不是我的问题。我只是不明白为什么编译器给“clone()在对象”错误时保护访问,而Test类正在扩展Object!

public class Test extends Object{
public static void main(String[] args) throws CloneNotSupportedException  {
     Object o = new Object();
     o.clone(); }  }

1 个答案:

答案 0 :(得分:0)

clone protected方法java.lang.Object protectedsuper.clone()修饰符指定只能在其自己的包中访问该成员(与package-private一样),此外,还可以在另一个包中通过其类的子类访问该成员。

PS。您可以从clone类的重写Test方法中调用Test。同时制作extends Cloneable班{{1}}。