Source:
Examlab for
SCJp 1.6 - Diagnostic Exam - Question 57
For the above code, I do not quite fully understand why the below two method declarations compile.
public abstract <K> A<? extends Number> useMe(A<?super K>);
public abstract <K> A<? super Number> useMe(A<?extends K>);
Is it because in <? super K> and <? extends K>, the 'K' refers to the 'K' in the CLASS declaration ?
If so, then A<?super K> may still fail the class declaration evaluation of <K extends Number>.
Is that possibility just ignored ?