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.