I have question on K&B book Chapter7 Q16, see below.
16.
Given a method declared as:
public static <E extends Number> List<? super E> process(List<E> nums)
A programmer wants to use this method like this:
// INSERT DECLARATIONS HERE
output = process(input);
Which pairs of declarations could be placed at // INSERT DECLARATIONS HERE to allow the code to compile? (Choose all that apply.)
ArrayList<Integer> input = null;
ArrayList<Integer> output = null;
ArrayList<Integer> input = null;
List<Integer> output = null;
ArrayList<Integer> input = null;
List<Number> output = null;
List<Number> input = null;
ArrayList<Integer> output = null;
List<Number> input = null;
List<Number> output