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.