Встречается на собеседованиях • сегодня

Как правильно клонировать объекты

В Java для клонирования объектов есть несколько способов:

  1. Использование метода clone() (реализация интерфейса Cloneable)
java
class MyClass implements Cloneable {
    @Override
    protected Object clone() throws CloneNotSupportedException {
        return super.clone();
    }
}
  1. Через конструктор копирования (более предпочтительный способ)
java
class MyClass {
    private int value;
    
    public MyClass(MyClass other) {
        this.value = other.value;
    }
}
  1. С помощью сериализации (для глубокого копирования сложных объектов)

Важные нюансы:

  • Метод clone() создает поверхностную копию (shallow copy)
  • Для глубокого копирования (deep copy) нужно реализовывать его самостоятельно
  • Конструктор копирования считается более безопасной альтернативой clone()
  • Все вложенные объекты также должны поддерживать клонирование
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы