Если у меня есть:
class foo implements Cloneable
а затем выполните:
bar = new foo();
bar.clone();
Я получаю мелкую копию без необходимости писать какой-либо код bar.clone()
, как обычно мне нужно делать, когда я реализую интерфейс.
Я понимаю, что функции интерфейса должны быть заполнены классом, реализующим его, а Object.clone()
не имеет реализации (согласно документам "Объект класса сам не реализует интерфейс Cloneable" )
Итак, откуда мой мелкий клон? Где код, реализующий bar.clone()
, если Object.clone()
не имеет реализации? Я в замешательстве.