JavaRush /Java блог /Архив info.javarush /Руководство по клонированию в Java, глубокое и поверхност...
IvanDurov
25 уровень

Руководство по клонированию в Java, глубокое и поверхностное копирования

Статья из группы Архив info.javarush
Клонирование - это процесс создания копии объекта. Чтоб создать копию, нужно вызвать метод clone() у класса реализовавшего интерфейс Cloneable. 1. Важность клонирования 2. Типы клонирования 3. Тип return у метода clone() 4. Альтернативы клонированию 5. Вопросы о клонировании Несмотря на то, что все классы унаследовали метод clone() от класса Object, для клонирования необходимо так же реализовать интерфейс Cloneable. Если вы попробуете вызвать метод clone() без реализации интерфейса, то получите исключение CloneNotSuppoted. Перезагрузить метод clone() и реализовать интерфейс Cloneable - это всё, что вам надо сделать. Интерфейс Cloneable является интерфейсом-маркером, таким же как и интерфейс Serializable.

Важность клонирования

Вот пример кода вызова clone() без реализованного интерфейса Cloneable. package example.java; public class Test { public static void main(String[] args) { Test b1 = new Test(); try { Test b2 = (Test)b1.clone(); }catch (CloneNotSupportedException e) { e.printStackTrace(); } } } вывод:
Output: java.lang.CloneNotSupportedException: example.java.Test at java.lang.Object.clone(Native Method) at example.java.Test.main(Test.java:8)
Комментарии (1)
ЧТОБЫ ПОСМОТРЕТЬ ВСЕ КОММЕНТАРИИ ИЛИ ОСТАВИТЬ КОММЕНТАРИЙ,
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ
19Kirill89 Уровень 42
13 августа 2023
эт чита за недолекция такая ХD???