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

Отработает ли Cloneable в классе Object если использовать его напрямую

Нет, Cloneable не сработает при вызове clone() напрямую у Object, даже если класс реализует Cloneable.

Причины:

  1. Object.clone() - protected метод
  2. Даже если переопределить как public, по умолчанию реализация Object.clone() делает поверхностное копирование и требует явной поддержки Cloneable

Пример:

java
class MyClass implements Cloneable {
    @Override
    public Object clone() throws CloneNotSupportedException {
        return super.clone(); // вызовет Object.clone()
    }
}

Без implements Cloneable вызов clone() выбросит CloneNotSupportedException. Даже с интерфейсом нужно явно переопределять clone().

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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