Действующий пункт 19 Java -использует только интерфейсы для определения типов

У меня есть абстрактный класс, который реализует два интерфейса. Правильно ли я думаю, что поскольку я использую два интерфейса, я не могу использовать ни один из них для реализации динамического связывания? Причина в том, что если бы я использовал один из интерфейсов,Я, очевидно, не смог бы вызывать методы из другого интерфейса, поскольку система типов позволяла бы только подтипу вызывать методы, определенные интерфейсом, который я использовал для объявления полиморфной переменной?

Поэтому мой фактический вопрос: нормально ли, что я действительно использую интерфейсы только для того, чтобы мой абстрактный класс (или подклассы )определенно обеспечивали реализацию методов? Кажется, это противоречит тому, что говорится в правиле 19 -вы должны использовать интерфейсы только для типов (я понял, что это означает полиморфизм ).

Пример:

public interface A{
    public void meth1();
}

public interface B{
    public void meth2();
}

public abstract class C implements A,B{

}

public void DynamicBinding(A aobject){
  //Can only call aobject.meth1();
}
0
задан user997112 28 July 2012 в 22:50
поделиться