Sobes.tech
Middle+

Prečo je metóda clone() deklarovaná v triede Object a nie v rozhraní Cloneable?

sobes.tech AI

Odpoveď od AI

Cloneable je marker rozhranie. Neobsahuje metódy a iba naznačuje JVM, že objekt môže byť klonovaný pomocou nativnej metódy Object.clone(). Vyhlásenie clone() v Object zabezpečuje jeho dostupnosť pre všetky triedy, ktoré môžu alebo nemusia implementovať Cloneable. Ak by clone() bol v Cloneable, trieda, ktorá toto rozhranie neimplementuje, by ho nemohla volať, čo by narušilo základnú funkčnosť klonovania podporovanú nativným kódom.