"... оператор instanceof проверяет, принадлежит ли объект заданному классу. Однако с помощью этого оператора можно также проверять, реализует ли объект заданный интерфейс."
Одна из тех простых вещей, которая часто вылетает из головы.
Вопрос: Как проверить, реализует ли класс заданный интерфес?
Ответ: С помощью оператора instanceof.
-----
"Аналогично классам интерфейсы также могут образовывать иерархию наследования."
Вопрос: Может ли один интерфейс наследовать другой интерфейс?
Ответ: Да.
Вопрос: Может ли один интерфейс наследовать несколько других интерфейсов?
Ответ: Да.
-----
"... все методы в интерфейсе автоматически объявляются открытыми. Аналогично константы в интерфейсе всегда являются открытыми статическими и терминальными."
А разве константа может быть не терминальной?
Вопрос: Как можно объявить в интерфейсе переменную?
Ответ: Никак. В интерфейсе можно объявить только константу.
Вопрос: Какими характеристиками обладают объявленные в интерфейсе свойства?
Ответ: Они являются открытыми статическими терминальными.
-----
"В некоторых интерфейсах объявляются только константы и ни одного метода."
При наследовании таких интерфейсов можно использовать объявленные в них константы напрямую, без указания имени интерфейса.
-----
"... любой класс может реализовывать несколько интерфейсов."
-----
Одна из тех простых вещей, которая часто вылетает из головы.
Вопрос: Как проверить, реализует ли класс заданный интерфес?
Ответ: С помощью оператора instanceof.
-----
"Аналогично классам интерфейсы также могут образовывать иерархию наследования."
Вопрос: Может ли один интерфейс наследовать другой интерфейс?
Ответ: Да.
Вопрос: Может ли один интерфейс наследовать несколько других интерфейсов?
Ответ: Да.
-----
"... все методы в интерфейсе автоматически объявляются открытыми. Аналогично константы в интерфейсе всегда являются открытыми статическими и терминальными."
А разве константа может быть не терминальной?
Вопрос: Как можно объявить в интерфейсе переменную?
Ответ: Никак. В интерфейсе можно объявить только константу.
Вопрос: Какими характеристиками обладают объявленные в интерфейсе свойства?
Ответ: Они являются открытыми статическими терминальными.
-----
"В некоторых интерфейсах объявляются только константы и ни одного метода."
При наследовании таких интерфейсов можно использовать объявленные в них константы напрямую, без указания имени интерфейса.
-----
"... любой класс может реализовывать несколько интерфейсов."
-----