Интерфейсы

Интерфейсы Java созданы для поддержки динамического выбора (resolution) методов во время выполнения программы. Интерфейсы похожи на классы, но могут содержать только константы, сигнатуры методов и вложенные типы. Класс может реализовывать любое количество интерфейсов. Все, что нужно сделать — это реализовать в классе полный набор методов всех интерфейсов. Сигнатуры таких методов класса должны точно совпадать с сигнатурами методов реализуемого в этом классе интерфейса.

Общая форма интерфейса:

public interface OperateCar {
    // constant declarations, if any

    // method signatures

    // An enum with values RIGHT, LEFT

}

Пример интерфейса:

public interface OperateCar {
    int turn(Direction direction, double radius, double startSpeed, double endSpeed);

    int changeLanes(Direction direction, double startSpeed, double endSpeed);

    int signalTurn(Direction direction, boolean signalOn);

    int getRadarFront(double distanceToCar, double speedOfCar);

    int getRadarRear(double distanceToCar, double speedOfCar);
    ......
    // more method signatures
}

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

Задание 1

Last updated