Sobes.tech
Back to questions
Junior — Middle
84

Каким образом реализовать и применять интерфейсы в Java для определения контрактов между классами?

Answer from AI

sobes.tech AI

В Java интерфейсы используются для определения контрактов между классами — они описывают набор методов, которые класс должен реализовать, не задавая конкретной реализации.

Как реализовать и применять интерфейсы:

  1. Объявление интерфейса:
public interface Vehicle {
    void start();
    void stop();
}
  1. Реализация интерфейса в классе:
public class Car implements Vehicle {
    @Override
    public void start() {
        System.out.println("Машина заводится");
    }

    @Override
    public void stop() {
        System.out.println("Машина останавливается");
    }
}
  1. Использование интерфейса для работы с объектами разных классов, реализующих один контракт:
public void operateVehicle(Vehicle v) {
    v.start();
    // ...
    v.stop();
}

Преимущества:

  • Обеспечивает стандартизацию методов.
  • Позволяет использовать полиморфизм.
  • Упрощает поддержку и расширение кода.

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