Эффективная Java :Анализ метода клонирования ()

Обратите внимание на следующее из статьи 11 эффективного Java (Разумное переопределение клонирования ), где Джош Блох объясняет, что не так с clone()контрактом.

There are a number of problems with this contract. The provision that “no constructors are called” is too strong. A well-behaved clone method can call constructors to create objects internal to the clone under construction. If the class is final, clone can even return an object created by a constructor.

Может ли кто-нибудь объяснить, что Джош Блох говорит в первом абзаце: «Если класс final, cloneможет даже вернуть объект, созданный конструктором». Какое отношение finalимеет здесь к clone()?

18
задан Bill the Lizard 18 July 2012 в 13:01
поделиться