Westonci.ca is the ultimate Q&A platform, offering detailed and reliable answers from a knowledgeable community. Get detailed and accurate answers to your questions from a dedicated community of experts on our Q&A platform. Get immediate and reliable solutions to your questions from a community of experienced professionals on our platform.

Consider the following code snippet:
public static void print(E[] a)
{
for (int i = 0; i < a.length; i++)
{
System.out.println(a[i] + " ");
}
}
int[] a = {3,6,5,7,8,9,2,3};
print(makeArray(a));
Assume that the method call to print(makeArray(a)) works correctly by printing the int array a. Which of the following headers for the makeArray method will make this possible?
I public static Integer[] makeArray(int[] a)
II public static E[] makeArray(int[] a)
III public static Integer[] makeArray(E[] a)
I and III only
I only
I and II only
II and III only
What does it mean when the syntax ? extends D is used?
Any subclass of D may be used.
Any superclass of D may be used.
Any subclass or superclass of D may be used.
This indicates a wildcard with an upper bound.
Consider the following code snippet that declares the GraduateStudent class:
public GraduateStudent extends Student { . . .}
Which of these statements are false?
a. I GraduateStudent is a subclass of Student
b. II Stack is a subclass of Stack
c. III Stack is a subclass of Stack
d. II only
e. III only
f. II and III only
g. I only

Sagot :

Answer:

Explanation:

1) I and II only ... This is because the makeArray parameter must be an int[] since that is what the a array that is being passed actually is. The return type should be E[] only but since that is not an option, it could work with Integer[] if the E class allows.

2) Any superclass of D may be used. Although this is not complete, extends allows for a subclass to access any variables and methods within the superclass D but not directly access another superclass of D.

3)  I only ... GraduateStudent is a subclass of Student