Quiz Guidelines


Multiple Choice Question


Consider the following classes :

class A{
public void mA(){ };
class B extends A {
public void mA(){ }
public void mB() { }
}class C extends B {
public void mC(){ }
and the following declarations:
A x = new B(); B y = new B(); B z = new C();

Which of the following calls are polymorphic calls?

Select 3 options

A. x.mA();
B. x.mB();
C. y.mA();
D. z.mC();
E. z.mB();

Multiple Choice Question


Which of the following is a legal return type of a method overriding the given method:
public Object myMethod() {...}
(Select the best option.)

Select 1 option

A. Object
B. String
C. Return type can be any object since all objects can be cast to Object.
D. void
E. None of the above.

Multiple Choice Question


Assume the following declarations:

class A{ }
class B extends A{ }
class C extends B{ }
class X{
B getB(){ return new B(); }
class Y extends X{              // method declaration here

Which of the following methods can be inserted in class Y?

Select 2 options

A. public C getB(){ return new B(); }
B. protected B getB(){ return new C(); }
C. C getB(){ return new C(); }
D. A getB(){ return new A(); }

Multiple Choice Question


Consider the contents of following two files:


package a;
public class A{
A(){ }
public void print(){ System.out.println("A"); }
}           //File
package b;
import a.*;
public class B extends A{
B(){ }
public void print(){ System.out.println("B"); }
public static void main(String[] args){
new B();

What will be printed when you try to compile and run class B?

Select 1 option

A. It will print A.
B. It will print B.
C. It will not compile.
D. It will compile but will not run.
E. None of the above.

Multiple Choice Question


An overriding method must have a same parameter list and the same return type as that of the overridden method.

Select 1 option

A. True
B. False