Map<K, V> map = HashMap<K, V>();
Set<K> keySet = map.keySet(); //'map' is parameter of HashMap object
Iterator<K> keyIterator = keySet.iterator();
I'm studying about how I can get key by 'Iterator'. The code above is part of that.
but [Set<K> keySet = map.keySet();] <- in this part
Isn't it that HashMap's keySet() method is what Set interface's keySet() method is redefined in HashMap?
but I can't find it in JAVA API document's method menu.
You seem to be making this more complicated than necessary.
A Map<K,V> has some keys; it will hand you a view of those keys as a Set<K>.
That Set<> necessarily implements the Set<> interface, which has Iterable<> as a subinterface. Therefore you can get an iterator over the Set.
Since it's an Iterator, then if you iterate it, it will eventually yield every possible key. That is:
But what are you actually trying to do?
The point of the Map and Set interfaces is that you can access them directly by key.