KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
Given: public class X implements Z { public String toString() { return "I am X"; } public static void main(String[] args) { Y myY = new Y(); X myX = myY; Z myZ = myX; System.out.println(myZ); } } class Y extends X { public String toString() { return "I am Y"; } } interface Z {} What is the reference type of myZ and what is the type of the object it references? A. Reference type is Z; object type is Z. B. Reference type is Y; object type is Y. C. Reference type is Z; object type is Y. D. Reference type is X; object type is Z. In this situation, I know that the object type is for sure Y, because I can test it with the .getClass() method. But I'm unsure of how to check what the reference type is. I'm assuming it is Z but that assumption is based on gut feeling and not logic. Can anyone elaborate on what the reference type might be and why? Thank you.
Tags (comma-separated)
Save Edits
Cancel