Java Constructor Overloading Interview MCQ Questions and Answers

0
Text Example

1) A Java constructor is like a method without ___.

A) statements

B) return type

C) argument list

D) None

Answer [=] B



2) The name of a constructor and the name of a class are ___.

A) Same

B) Different

C) -

D) -

Answer [=]A



3) The placement of a constructor inside a class should be ___.

A) Always at the beginning of class

B) Always at the end of class

C) Anywhere in the class

D) None

Answer [=]C



4) The purpose of a Java constructor is ___.

A) Initialization of variables with passed data

B) Writing custom code

C) Accepting other objects as inputs

D) All the above

Answer [=]D



5) Memory is allocated to an object once the execution of ___ is over in Java language.

A) main method

B) constructor

C) destructor

D) None

Answer [=]B



6) What is the output of the below Java program?

public class TestingConstructor

{

void TestingConstructor()

{

System.out.println("Amsterdam");

}

TestingConstructor()

{

System.out.println("Antarctica");

}

public static void main(String[] args)

{

TestingConstructor tc = new TestingConstructor();

}

}

A) Antarctica

B) Amsterdam

C) No output

D) Compiler error

Answer [=]A

Explanation:Here the constructor is TestingConstructor() without return type.



7) In Java, a constructor with no parameters or no arguments is called ___ constructor.

A) Default constructor

B) User-defined constructor

C) -

D) -

Answer [=]A



8) In Java, a constructor with one or more arguments or parameters is called a ___ constructor.

A) Default constructor

B) User-defined constructor or Non-default constructor

C) -

D) -

Answer [=]B



9) The compiler adds a default no-argument constructor to a class if it ___.

A) does not define a constructor at all.

B) defines at least one constructor with arguments

C) -

D) -

Answer [=]A



10) Overloading of constructors in Java means adding more than ___ constructors with the different argument list.

A) 1

B) 2

C) 3

D) 8

Answer [=]A



11) What is the output of the below Java program with constructors?

public class Constructor2

{

int count=10;

Constructor2(int count)

{

System.out.println("Count=" + count);

}

public static void main(String[] args)

{

Constructor2 con = new Constructor2();

}

}

A) Count=0

B) Count=10

C) Compiler error

D) None of the above

Answer [=] C

Explanation: if you write a constructor with arguments, the default constructor is not added by the compiler. You should add it explicitly.



12) A constructor can call another overloaded constructor using the ___ keyword in Java.

A) super

B) local

C) con

D) this

Answer [=]   D



13) What is the output of the below Java program with overloaded constructors?

public class Constructor3

{

int birds=10;

Constructor3()

{

this(20);

}

Constructor3(int birds)

{

System.out.println("Birds=" + birds);

}

public static void main(String[] args)

{

Constructor3 con = new Constructor3();

}

}

A) Birds=0

B) Birds=10

C) Birds=20

D) Compiler error

Answer [=]  C

Explanation:   You can pass parameters to another constructor.


4) In Java, you can pass __ variables from one constructor to another overloaded constructor.

A) local variables

B) static variables

C) non-static variables

D) local and static variables

Answer [=]] D


15) Choose the correct way of calling the second constructor from the first constructor in the below code options.

A)

Constructor5()

{

int a=30;

this('A');

}

Constructor5(char c)

{

//

}

B)

Constructor5()

{

int a=30;

this('A');

System.out.println("Success");

}

Constructor5(char c)

{

//

}

C)

Constructor5()

{

this('A');

System.out.println("Success");

}

Constructor5(char c)

{

//

}

D) All the above

Answer [=] C

Explanation: Only the first statement should call another constructor.



16) What is the output of the below Java program with many constructors?

public class Constructor7

{

Constructor7(int a)

{

System.out.println("Book=" + a);

}

Constructor7(float a)

{

System.out.println("Pen="+ a );

}

public static void main(String[] args)

{

Constructor7 con = new Constructor7(50.5f);

}

}

A) Book=50

B) Pen=50.5

C) Compiler error

D) None of the above

Answer [=]  B

Explanation:  Constructor overloading allows constructors with different arguments at the same time.



17) What is the output of the below Java program with many constructors?

public class Constructor8

{

Constructor8(boolean a)

{

System.out.println("MODEM="+ a );

}

Constructor8(float a)

{

System.out.println("ROUTER=" + a);

}

public static void main(String[] args)

{

Constructor8 con1 = new Constructor8(50);

Constructor8 con2 = new Constructor8(false);

}

}

A)

ROUTER=50.0

MODEM=false

B)

ROUTER=50

MODEM=false

C) Compiler error

D) None

Answer [=] A

Explanation:  Java knows when to typecast a variable to a higher type like a float from int. So the number 50 is passed to a constructor accepting a float argument as there is no constructor accepting int argument above.



18) What is the output of the below Java program with overloaded constructors?

public class Jiraffe

{

Jiraffe(int sugarcanes)

{

System.out.println("Eats "+ sugarcanes + " Sugarcanes");

}

Jiraffe(int age, int...sugarcanes)

{

System.out.println("Eats "+ sugarcanes[0] + " Sugarcanes");

}

public static void main(String[] args)

{

Jiraffe jiff2 = new Jiraffe(40);

Jiraffe jiff = new Jiraffe(5,10);

}

}

A)

2.Eats 40 Sugarcanes

2.Eats 10 Sugarcanes

B)

1.Eats 40 Sugarcanes

2.Eats 10 Sugarcanes

C) Compiler error

D) None

Answer [=] B

Explanation:Java supports using the varargs in constructors.



19) Choosing a suitable overloaded constructor happens at ___ time in Java.

A) Compile-time

B) Run time

C) -

D) -

Answer [=]B



20) Java constructor overloading follows ___ principle in Object-Oriented programming.

A) Inheritance

B) Encapsulation

C) Polymorphism

D) None

Answer [=]C

Explanation:Overloading of constructors requires you to specify the same name to all constructors. So, it satisfies the polymorphism principle of Oops.



Java Constructor Overloading Interview MCQ Questions and Answers
Java Constructor Overloading



21) Java allows calling or invoking a method from a constructor. State TRUE or FALSE.

A) TRUE

B) FALSE

C) -

D) -

Answer [=]A






22) What is the output of the below Java program?

public class Constructor9

{

Constructor9()

{

show();

}

void show()

{

System.out.println("JAM JAM");

}

public static void main(String[] args)

{

Constructor9 con = new Constructor9();

}

}

A) JAM JAM

B) No output

C) Compiler error

D) None



Answer [=]A

Explanation:Invoking a method from within a constructor is allowed.


Post a Comment

0 Comments
Post a Comment (0)
Our website uses cookies to enhance your experience. Learn More
Accept !