GPA Калькулятор с апплетом

Абстрактный интерфейс не такой избыточный, как кажется, по-видимому, теоретически.

Интерфейс может быть расширен, как и класс. Если вы создаете иерархию интерфейса для своего приложения, у вас может быть «базовый» интерфейс, вы расширяете другие интерфейсы, но не хотите как сам объект.

Пример:

public abstract interface MyBaseInterface {
    public String getName();
}

public interface MyBoat extends MyBaseInterface {
    public String getMastSize();
}

public interface MyDog extends MyBaseInterface {
    public long tinsOfFoodPerDay();
}

Вы не хотите, чтобы класс реализовал MyBaseInterface, только два других, MMyDog и MyBoat, но оба интерфейса совместно используют интерфейс MyBaseInterface, поэтому имеют свойство «name».

Я знаю его вид академический, но я думал, что некоторым может показаться интересным. : -)

В этом случае это действительно «маркер», чтобы сигнализировать разработчикам интерфейса, которые он не предназначен для самостоятельной реализации. Я должен указать на компилятор (по крайней мере, на солнце / ora 1.6, с которым я его пробовал) компилирует класс, реализующий абстрактный интерфейс.

0
задан Jaken Herman 26 February 2015 в 02:28
поделиться