IDNLearn.com is your go-to resource for finding expert answers and community support. Whether your question is simple or complex, our community is here to provide detailed and trustworthy answers quickly and effectively.

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