Back to questions
Junior — Middle
55
Объясните механизм работы метода clone в языке программирования Java.
Companies where asked
Prime
Answer from AI
sobes.tech AI
Метод clone() в Java используется для создания копии объекта. Он определён в классе Object и возвращает поверхностную копию (shallow copy) текущего объекта.
Чтобы использовать clone(), класс должен:
- реализовать интерфейс
Cloneable, иначе при вызовеclone()будет выброшено исключениеCloneNotSupportedException. - переопределить метод
clone(), обычно вызываяsuper.clone().
Пример:
public class Person implements Cloneable {
private String name;
public Person(String name) {
this.name = name;
}
@Override
protected Object clone() throws CloneNotSupportedException {
return super.clone();
}
}
Важно понимать, что clone() создаёт поверхностную копию: если объект содержит ссылки на другие объекты, то копируются только ссылки, а не сами вложенные объекты. Для глубокого копирования нужно реализовать дополнительную логику.