Клонирование объектов в Java. Пример использования метода clone()

Клонирование объектов в Java. Пример использования метода clone()

Класс Object в Java содержит стандартный метод clone(), который возвращает копию существующего объекта. Сегодня мы рассмотрим пример использования этого метода и разберем сложные моменты, связанные с клонированием объектом. 

Для использования клонирования в Java вам нужно реализовать интерфейс java.lang.Cloneable, иначе будет брошено исключение CloneNotSupportedException.

Давайте рассмотри представленный ниже Java класс:

В результате получается такой вывод в консоль:

Из результатов выполнения программы видно, что стандартная реализация метода clone() использует неполную копию и ct2 зависит от каких-либо изменений в атрибутах ct1, поэтому мы должны переопределить метод clone().

Важное замечание по клонированию объектов в Java

Если ваш класс содержит изменяемые объекты, то вам нужно обеспечить надлежащее выполнение метода clone() с использованием глубокого копирования. Раскомментируйте метод clone() и запустите программу снова.
Теперь результат будет таким:

Теперь оба объекты не влияют друг на друга и клонирование работает корректно.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *