Iterator<String> di = new MyDoublyIterator<String>();
di.hasPrev();
Это вам не поможет.Компилятору нужен способ узнать, что ваш собственный интерфейс имеет этот метод, а не встроенный интерфейсный интерфейс Iterator, т. Е. Iterator<String>
.Здесь вы создаете ссылку на встроенный интерфейс Iterator, т.е. Iterator<String>
.
Следовательно, если у вас есть собственный интерфейс с именем MyDoublyIterator<E>
, и у этого интерфейса есть метод с именем hasPrev();
, вам необходимосделайте это:
MyDoublyInterface<String> di = new MyDoublyIterator<String>();
di.hasPrev();
, и тогда он разрешит вызов метода, поскольку он знает, что вы создали собственную ссылку MyDoubleInterface<T>
, и это должно решить проблему сейчас.: -)