Originally posted by Keith Lynn:
Basically what they are saying is that making E the type accepted by the Comparator limits the Comparator to only accept E.
By using E as the lower bound, then you can send a Comparator that has a parameterized type that is any superclass of E.
[ May 28, 2006: Message edited by: Keith Lynn ]
Comparator<
String> will only work with String. and If we say Comparator<Object> it will work only with object i t can't work for String or any other type.
if we say Comparator<? super E> then it can work with any super type of E.
This is what i understand but I am confused in what benefit we will get