因为Object里面的clone()是protected,外面调不了的。

解决方案 »

  1.   

    也不对啊, 写的类是从OBJECT中EXTENDS 来的啊派生类是可以访问父类的PROTECTED 的METHODS的. 
    我做了一实验:
    //:test.java
    package YANtools;
    public class test
    {
       protected void display()
       {
           System.out.println("the protected method was called!");
        }
    }//:subtest.java
    import YANtools.test;  //这里还有个问题, 如果用import YANtools.*; 编译提示找不到类test,一定要指定YANtools.test; 有着个规定吗??
    public class subtest extends test
    {
       public static void main(String[] args)
       {
          subtest it = new subtest();
          it.display(); //这里编译没有提示出错! 
       }
    }
      

  2.   

    不错,你的类extends Object,可以调Object的clone。但书上的意思是你的类要有一个clone方法给别的类调,这些别的类可不一定就是你的类的子类了,所以要声明一个public clone方法才行。