Because Map is not Collection, not extends Collection interface. Maps implementations USE collection interface to provide they own functionallity.
Think about situation like this:
- you have Map with removeAll(..) method.
- vou call this method and map removes...
- so what they should remove? Keys, values or pairs - entries - key:value?
Map can provide methods:
- removeAllKeys() - parameter is collection of keys
- removeAllValues() - parameter is collection of values
- removeAllEntries() - parameter is collection of pair and remove entry if only value is mapped by key. If in map exist value with diffrend key or vice-versa then that entry isn't removed
but in this case you have three methods not one.
So put removeAll method to Map interface is not clear to understand wich types of objects should be check and remove - keys, value, both or pairs.