2013-03-18 12 views
6

Dlaczego muszę zastąpić klon, jeśli chcę klonować klasy? Wszystkie klasy rozciąga się od Object, więc dlaczego mam zastąpić metodę klonowania obiektu? Dlaczego nie mogę po prostu wywołać oryginalnej metody klonowania obiektów?Dlaczego muszę zastąpić klon, jeśli chcę klonować klasę?

+0

Możesz chcieć kasy tę odpowiedź także: http://stackoverflow.com/questions/3652748/cloning-objects-in-java- 3 pytania/3652767 # 3652767 – nkr

+0

Zawsze możesz napisać metodę kopiowania w swojej klasie. Nie musisz niczego przesłonić. –

Odpowiedz

8

Jest to jedna z wielu "wad projektowych" w JDK.

Clonable powinien być interfejs z metodą clone(), ale zamiast to marker interface i Object ma „nic nie robić” Wdrożenie metody clone() ... i jesteś w lewo z pytaniem.


Jeśli jesteś zainteresowany, this answer wymienia kilka innych "błędów" w języku Java.

Powiązane problemy