если ваш класс не реализует интерфейс Cloneable.

о, что я не могу понять.

Вjava.lang.Object clone() определяется сprotected модификатор. По определению, к нему можно получить доступ по имени внутри определения своего собственного класса, по имени внутри любого класса, производного от него, и по имени в определении любого класса в том же пакете.

ЗдесьSample класс находится в другом пакете, и, очевидно, он не может получить доступclone() изObject класс. Но, какSample вытекает неявно изObjectпочему он не может получить к нему доступ? Определение не говорит, что оно ДОЛЖНО удовлетворять обоим условиям (внутри одного пакета И также быть подклассом).

public class Sample {

  public Object foo() throws CloneNotSupportedException {
   ... 
   return someObject.clone();
  }
}

Ответы на вопрос(1)

Ваш ответ на вопрос