Java интерфейс (interface)

Интерфейс (interface)-указывает, что класс должен делать, но реализует действия, то как он это делает.

Интерфейс в Java можно сравнить в реальность с контрактом между людьми. Он реализует определенные нормы через методы Java и классы, которые реализует этот интерфейс, должны следовать строгим правилам, и реализации методов.

Синтаксис

Интерфейс объявляется так же, как и класс. Пример общего вида интерфейса:

Переменные могут быть объявлены внутри деклараций интерфейса. Они являются окончательными и неявно статическими их еще называют константами. Также переменные должны быть инициализированы с постоянным значением. Все методы и переменные являются неявно открытыми, интерфейс сам по себе является публичным, открытым классом.

Ниже приведен пример определения интерфейса.

Реализация интерфейсов

Для того, чтобы реализовать интерфейс, включают в себя ключевое слово  implements в определении класса, а затем создают методы, определенные в интерфейсе.

Общий вид класса, который включает в себя implements выглядит следующим образом:

speed() объявляется с помощью (public) публичного модификатора доступа. При реализации метода интерфейса, он должен быть объявлен как public.

Java Интерфейс как тип данных

После того, как мы определяем интерфейс, мы можем использовать его в качестве типа для экземпляра объекта , все это мы создаем через класс реализации.

В следующем примере вызывается метод обратного вызова () через ссылку на интерфейс переменной:

Результатом работы программы будет: 70

Java Полиморфизм и интерфейс.

Интерфейс предназначен для полиморфизма. Интерфейс определяет список методов , действующих в качестве контракта между интерфейсом и его реализации. Один интерфейс может быть реализован более чем один раз и в  каждой отдельной реализации одного и того же интерфейса будет выполнятся тот же список методов.  Поэтому если мы знаем, что некоторые классы реализуют один и тот же интерфейс мы можем использовать этот интерфейс для создания ссылки на все его реализатор классов. Компилятор будет динамически определять, какую реализацию использовать.

Пример интерфейса interface.


Результатом работы программы будет:

Скорость мяча равна=34
Другой класс
Скорость=34

Java интерфейс, сборка блока.

В классе можно реализовать интерфейс но не в полном объеме, то есть реализовать те методы которые вам нужны, для этого вам достаточно объявить класс как абстрактный. Ниже я привел пример такой реализации интерфейса.

Расширение интерфейса Extend Interface

Один интерфейс может наследовать другой интерфейс с ключевым словом extends.

Скорость мяча равна=34
Другой класс
Скорость=34

Обновлено: 08.04.2017 — 11:29

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.