A. An object of type com.test.Test is instantiated and assigned to a variable baz of type com.test.Bar.
B. An object of type com.test.Bar is instantiated and assigned to a variable baz of type com.test.Test.
C. To avoid error, com.test.Bar must be superclass of com.test.Test or an interface implemented by com.test.Test.
D. To avoid error, com.test.Test must be a superclass of com.test.Bar or an interface implemented by com.test.Bar.
Answer: B, D
In my opinion the correct answers are A and C not B, D as it is written in the mock exam. Am I right ? Please help me!
Yes you are right. Correct answer is A,C.
We try to create object for the Test Class and reference it to Bar class/interface variable baz. OO Concept - Dynamic Polymorphism.
So, Bar can be either abstract class which is extended by Test Class or Interface implemented by Test Class or simply any class or interface higher up in the inheritance hierachy of Test Class.