Confusión sobre la interfaz clonable y object.clone () en java

Si tengo:

class foo implements Cloneable

y luego hacer:

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

Recibo una copia superficial sin necesidad de escribir nadabar.clone() Código como normalmente tendría que hacer cuando implemento una interfaz.

Mi entendimiento es que las funciones de una interfaz deben ser completadas por la clase que las implementa, yObject.clone() no tiene implementación (según los documentos, "La clase Object no implementa la interfaz Cloneable")

Entonces, ¿de dónde viene mi clon superficial? ¿Dónde está el código que implementa?bar.clone() SiObject.clone() no tiene implementacion? Estoy confundido.

Respuestas a la pregunta(4)

Su respuesta a la pregunta