Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Consider the following method. public static void someMethod (List<? Extends Emp

ID: 3771537 • Letter: C

Question

Consider the following method.

public static void someMethod (List<? Extends Employee>param) { }

Suppose you want to call the method like this: someMethod(argument);

Which of the following assignment statements are valid to make such a method call? (Mark them all.) Suppose Manager extends Employee. ArrayList<E> implements List<E>.

List <Manager> argument = new ArrayList<Manager>();

List<? Extends Employee> argment = new ArrayList<Manager>();

List<Object> argument = new ArrayList<Manager>();

ArrayList <Employee> argument = new ArrayList<Manager>();

List<?> argument = new ArrayList<Manager>();

List<? Extends Manager> argument = new ArrayList<Manager>();

List<Employee>argument = new ArrayList<Manager>();

Explanation / Answer

Valid Statememts:

List<Manager> argument = new ArrayList<Manager>();
       List<?> argument4 = new ArrayList<Manager>();
       List<? extends Manager> argument5 = new ArrayList<Manager>();
       List<? extends Employee> argment3 = new ArrayList<Manager>();