Я изучаю базовый интерфейс и классы пакета Java.util. Теперь интерфейс Set является подклассом Collection и Iterable, поэтому Set имеет Iterator moudle. Итак, почему я использую ссылку интерфейса Iterator?Вопросы об интерфейсе Iterator
Iterator<String> iterx = x.iterator();
Iteratr также является интерфейсом. Но я не вижу никакого отношения к интерфейсу Iterable и интерфейсу Iterator. Iterable имеет moudle, который называется Iterator. это не было бы правильнее написать
Iterable.Iterator iterx = x.iterator();
Поскольку x.iterator вызвать Moudle, что набор унаследовали от Iterable, и не вызвать интерфейс итератора.
Что я не понимаю?
Не знаете, что вы просите, но имя квалифицированного класса ('java.lang.Iterable'), которое вы записываете в свой код, не имеет ничего общего с наследованием. – zapl
Метод итератора (с результатом типа «Итератор») - это то, что должен обеспечить класс, реализующий «Итерируемый». –