Javatpoint Logo
Javatpoint Logo

Constructor overloading in Java

In Java, we can overload constructors like methods. The constructor overloading can be defined as the concept of having more than one constructor with different parameters so that every constructor can perform a different task.

Consider the following Java program, in which we have used different constructors in the class.

Example

Output:

this a default constructor


Default Constructor values: 


Student Id : 0
Student Name : null


Parameterized Constructor values: 


Student Id : 10
Student Name : David

In the above example, the Student class constructor is overloaded with two different constructors, I.e., default and parameterized.

Here, we need to understand the purpose of constructor overloading. Sometimes, we need to use multiple constructors to initialize the different values of the class.

We must also notice that the java compiler invokes a default constructor when we do not use any constructor in the class. However, the default constructor is not invoked if we have used any constructor in the class, whether it is default or parameterized. In this case, the java compiler throws an exception saying the constructor is undefined.

Consider the following example, which contains the error since the Colleges object can't be created using the default constructor now since it doesn't contain one.

Use of this () in constructor overloading

However, we can use this keyword inside the constructor, which can be used to invoke the other constructor of the same class.

Consider the following example to understand the use of this keyword in constructor overloading.

Output:

Printing Student Information: 

Name: John
Id: 101
Contact No.: 9899234455
College Name: 9899234455
Passing Year: 2018






Youtube For Videos Join Our Youtube Channel: Join Now

Feedback


Help Others, Please Share

facebook twitter pinterest

Learn Latest Tutorials


Preparation


Trending Technologies


B.Tech / MCA