All the posts and topics that contain only an error report will be moved here after the error is corrected. This is to ensure that when users view a question in ETS Viewer, the "Discuss" button will not indicate the presence of a discussion that adds no value to the question.
What you say is correct but it does not apply to declarations that use generics. Ideally, compiler should not even allow List<? extends String> because String is final. But I guess it might lead to complications if, for example, a class is later on made non-final (or final) and that is why it does not check whether the class is final or not.
Very hard to answer this question correctly as none of the answers compile. A String can't be added to a list which requires a Shape. Also the methods have a parameter 'strList'. You would expect a list of Strings. However in all examples it is a list of Shapes. Even if you would replace Shape with String for each individual parameter, it would still leave you with four incorrect options.
So I assume there is something wrong with this question or am I doing something wrong?