Sponsor

Java Constructor Overloading Interview MCQ Questions and Answers | java methods interview questions

blog.softwaretechit.com
home.softwaretechit.com

Study and learn Interview MCQ Questions and Answers on Java Constructor Overloading. Attend job interviews easily with these Multiple Choice Questions. 



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.

 

14) 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.

 

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