Почему нельзя просто вызвать clone? Добрый .Учу Джаву по Хорстманну и появился такой вопрос.Если у Object class метод clone() protected,то я знаю что все под-классы могут его вызывать.Но у нас же все классы неявно наследуют класс Object,так почему я не могу его вызывать?
P.S.: Да я знаю что надо прописать implements Cloneable,и переписать метод clone,сделав его public.

21 Авг 2019 в 06:33
232 +1
0
Ответы
1

В Java метод clone() из класса Object по умолчанию является protected, что означает, что его можно вызывать только из классов, которые наследуются от Object или реализуют интерфейс Cloneable. Если вы попытаетесь вызвать метод clone() из класса, который не реализует интерфейс Cloneable, вы получите ошибку компиляции.

Если вы хотите использовать метод clone() в своем классе, вам необходимо реализовать интерфейс Cloneable и переопределить метод clone() в своем классе, делая его публичным. Таким образом, ваш класс будет иметь возможность использовать клонирование объектов.

Таким образом, чтобы вызвать метод clone(), необходимо реализовать интерфейс Cloneable и переопределить метод clone() в вашем классе, делая его публичным.

20 Апр 2024 в 13:16
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир