Iterable - класс Iterable

Абстрактный класс Iterable является базовым классом для представления коллекций (составных объектов). На основе данного интерфейса построен весь каркас системных коллекций (списки, очереди, множества и т.д.).

В данном интерфейсе определены методы работы с составным объектом в целом - обработка каждого элемента, фильтрация элементов, проверка элементов на соответствие различным условиям, определение размера коллекции и т.д.

Коллекция, реализующая его, может формировать объект-итератор, реализующий интерфейс Iterator, а значит может быть использована в конструкции for (в виде for-in).

Интерфейс Iterable определяет функцию, для получения итератора данного составного объекта, с помощью котрого можно получать доступ ко всем элементам. Этот метод явно используются в конструкциях for-in для прохождения всех элементов данного объекта.