Как между собой связаны Iterable, Iterator и «for-each»? Классы, реализующие интерфейс Iterable, могут применяться в конструкции for-each, которая использует Iterator.