Confusão sobre interface clonável e object.clone () em java

Se eu tiver:

class foo implements Cloneable

e então faça:

bar = new foo();
bar.clone();

Eu recebo uma cópia superficial sem precisar escreverbar.clone() código como eu normalmente precisaria fazer quando eu implementar uma interface.

Meu entendimento é que as funções de uma interface devem ser preenchidas pela classe que a implementa, eObject.clone() não tem implementação (de acordo com os docs, "A classe Object não implementa a interface Cloneable")

Então, de onde vem meu clone superficial? Onde está o código que implementabar.clone() E seObject.clone() não tem implementação? Estou confuso.

questionAnswers(4)

yourAnswerToTheQuestion