Встречается на собеседованиях • сегодня
В чем разница между клонированием и копированием объектов
Клонирование создает новый объект с теми же значениями полей, но это отдельный экземпляр в памяти. Копирование может быть поверхностным (shallow) или глубоким (deep).
Поверхностное копирование копирует ссылки на вложенные объекты, а глубокое создает новые экземпляры вложенных объектов.
Пример:
java
class Person implements Cloneable {
String name;
Address address;
@Override
protected Object clone() throws CloneNotSupportedException {
return super.clone(); // поверхностное копирование
}
}clone()по умолчанию делает поверхностное копирование.- Для глубокого клонирования нужно переопределить
clone()и клонировать вложенные объекты вручную. - Копирование через конструктор или фабричные методы дает больше контроля, чем
clone().

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы