I've read many of the questions on this topic, I still don't understand what these interfaces are and how they work. What I've gathered is that the Iterable interface says that objects instantiated from this class can be iterated over, like in a for-each loop. And this iterable interface has a single abstract method that must be implemented and that is the method is called iterator. But unlike other methods this method is also an interface? and can be instantiated to create an iterator object, I think? But if iterator is an abstract method how are objects created from it? Inside this abstract method contain methods such as hasNext(), remove() and next(). This makes no sense to me how can an abstract method from an iteraface be instantiated and also have three abstract methods of its own?
I am very confused by all this. I've read the answers on here and JavaDocs but this is not making any sense to me.
Please help Thank you