In the method below, do I need to use <String> as it is in the method declaration of the second example of the same method?
Joined: Sep 24, 2003
You don't need to. You might return a List<?> or a List<? super String>. There isn't much point to returning a List<? extends String> even though the compiler will permit it. It's all up to the definition of the contract that you are providing to your clients.