В книге по Core Java я нашел этот отрывок:
Подумайте о том, как {{1 }} Класс объекта может реализовать клонирование. Он вообще ничего не знает об объекте, , поэтому он может делать только копию "поле за полем". Если все поля данных в объекте являются числами или другими базовыми типами, копирование полей вполне нормально. Но , если объект содержит ссылки на подобъекты , то копирование поля дает вам еще одну ссылку на подобъект , поэтому оригинал и {{1} } клонированные объекты по-прежнему имеют некоторую информацию.
Прочитав это, я подумал, что Как метод клонирования изначально реализован в классе объектов?
Меня беспокоит следующее: как метод в классе Object
может создавать поле по полевому клону объекта подкласса, когда он ничего не знает об этом классе?