R9.12 Suppose C is a class that implements the interfaces I and J. Which of the
ID: 3732196 • Letter: R
Question
R9.12 Suppose C is a class that implements the interfaces I and J. Which of the following assignments require a cast?
C c = . . .;
I i = . . .;
J j = . . .;
a. c = i;
b. j = c;
c. i = j;
R9.13 Suppose C is a class that implements the interfaces I and J, and i is declared as
I i = new C();
Which of the following statements will throw an exception?
a. C c = (C) i;
b. J j = (J) i;
c. i = (I) null;
R9.14 Suppose the class Sandwich implements the Edible interface, and you are given the variable declarations
Sandwich sub = new Sandwich();
Rectangle cerealBox = new Rectangle(5, 10, 20, 30);
Edible e = null;
Which of the following assignment statements are legal?
a. e = sub;
b. sub = e;
c. sub = (Sandwich) e;
d. sub = (Sandwich) cerealBox;
e. e = cerealBox;
f. e = (Edible) cerealBox;
g. e = (Rectangle) cerealBox;
h. e = (Rectangle) null;
Explanation / Answer
R9.12) a. c = i;
R9.13) b. J j = (J) i;
R9.14) a. e = sub;
c. sub = (Sandwich) e;
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.