Интерфейсы и класс объектов: наследование и вызов методов
В Java интерфейсы предлагают средства определения контрактов, которые могут реализовать классы. При рассмотрении отношений между интерфейсами и классом объектов возникает вопрос о наследовании.
Наследуют ли интерфейсы от класса объектов?
Ответ: нет . Интерфейсы не наследуются от класса Object. В отличие от классов, не существует неявного наследования какого-либо общего корневого интерфейса всеми интерфейсами.
Вызов метода в экземплярах интерфейса
Несмотря на то, что вы не наследуетесь от объекта, вы можете вызывать методы например,quals() для экземпляров интерфейса. Как это возможно?
Каждый интерфейс неявно объявляет общедоступный абстрактный метод для каждого общедоступного метода в Object. Следовательно, даже если в интерфейсе явно не объявлен метод равенства(), он неявно объявляется как член.
Подробности спецификации языка Java
Спецификация языка Java (JLS) предоставляет подробную информацию об этом поведении в § 9.2 Члены интерфейса:
Заключение
Интерфейсы в Java не наследуются от Object. Однако они неявно объявляют методы для всех методов общедоступного объекта, чтобы обеспечить совместимость и разрешить вызов методов в экземплярах интерфейса.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3