Thanks Kshitij for the nice explanation.
Now, I am pretty much clear that what is happening. Just your following line I am unable to fully understand, please explain.
that is "a list of 'anything' that is either of type E or its super type; but not exceeding Number".
Moreover, I would like to discuss the following case:
The code for case - A does not compiles, suggests that Object we can not add to this list. But case - B compiles and runs fine, also while iterating through the elements it treats the element as references of Object only but never allow to add Object to the list, why?? I know you would be definitely having the reason
Thanks Asanka for the wishes, but I think the wishes are for Kshitij for the great performance.
Thanks Narendra for your efforts, but the question is complete. We need to find appropriate input and output references such that it matches the method definition, but you have changed the method definition itself to match different answers. I will obey your suggestion of posting these type of questions in new forum