У меня есть быстрый вопрос относительно метода clone()
в Java, который используется как super.clone()
в отношении наследования, - где я вызываю метод clone()
в родительском классе, начиная с кнопки.
Предполагается, что метод clone()
возвращает копию этого объекта, однако, если у меня есть три класса в наследстве heirachy и вызывают super.clone()
три раза, почему не самый высокий класс в наследстве heirachy, как раз под class Object, получить копию этого класса?
Предположим, что мы имеем три класса: A, B и C, где A → B → C (inherit = → )
Затем вызывая super.clone()
в классе C, вызывает clone()
в B, который вызывает super.clone()
, вызывает clone()
в A, который вызывает super.clone()
', на этот раз Object.clone() получает вызов'. Почему это не копия объекта this
в отношении класса A, который возвращается из Object.clone()
? Это звучит логично для меня.