Изучаем Java

Вы здесь: Главная >> Java-самоучитель >> Интерфейсы

Интерфейсы


Интерфейсы

Интерфейс — это структура данных, которая может содержать поля, представленные в виде именованных констант (ключевое слово final тут обычно не указывается, так как поля — это всегда именованные константы) и объявления методов. Интерфейсом могут расширяться многие классы. Интерфейс может сам расширяться несколькими интерфейсами. Заметим, что интерфейс могут использовать сразу несколько классов, независимых друг от друга.

У интерфейса могут быть следующие модификаторы.

• public (если он есть, то интерфейс доступен отовсюду, если его нет — доступен только в данном пакете).
• abstract (так как интерфейс всегда абстрактный, то модификатор обычно опускается).
• strictfp— все позже реализуемые методы должны будут работать с числами с плавающей точкой аналогично на всех машинах Java.

Приведем пример простого интерфейса, а также класса, который его наследует (листинг 4.13).

Листинг 4.13.
Пример простого интерфейса и класса, который его наследует

Можно объявить переменную с типом данных, являющимся наименованием интерфейса. Она может ссылаться на объект класса, который реализует интерфейс, и может вызывать методы, которые объявлены в интерфейсе, а реализованы в классе. Чтобы сделать такую ссылку, необходимо в качестве типа данных ссылки указать наименование интерфейса, а после ключевого слова new указать имя конструктора класса (листинг 4.14).

Листинг 4.14.
Объявление переменной с типом данных, являющимся наименованием интерфейса

Локальными переменными называются пер