Претоварване на конструктора в Java
Какво претоварване на конструктора Java?
Java Претоварването на конструктор е техника, при която един клас може да има произволен брой конструктори, които се различават в списъка с параметри. Компилаторът разграничава тези конструктори, като взема предвид броя на параметрите в списъка и техния тип.
Примери за валидни конструктори за клас Account са
Account(int a); Account (int a,int b); Account (String a,int b);
Пример 2: За да разберете претоварването на конструктора в Java
Стъпка 1) Въведете кода в редактора.
class Demo{
int value1;
int value2;
/*Demo(){
value1 = 10;
value2 = 20;
System.out.println("Inside 1st Constructor");
}*/
Demo(int a){
value1 = a;
System.out.println("Inside 2nd Constructor");
}
Demo(int a,int b){
value1 = a;
value2 = b;
System.out.println("Inside 3rd Constructor");
}
public void display(){
System.out.println("Value1 === "+value1);
System.out.println("Value2 === "+value2);
}
public static void main(String args[]){
Demo d1 = new Demo();
Demo d2 = new Demo(30);
Demo d3 = new Demo(30,40);
d1.display();
d2.display();
d3.display();
}
}
Стъпка 2) Запазете, компилирайте и стартирайте кода.
Стъпка 3) Грешка = ?. Опитайте и отстранете грешката, преди да продължите към следващата стъпка от Java претоварване на конструктора
Стъпка 4) Всеки клас има стойност по подразбиране Конструктор в Java. Претоварен конструктор по подразбиране Java за клас Демо is Демо (). В случай, че не предоставите този конструктор, компилаторът го създава за вас и инициализира променливите към стойности по подразбиране. Можете да изберете да замените този конструктор по подразбиране и да инициализирате променливите до желаните от вас стойности, както е показано в Пример 1.
Но ако зададете параметризиран конструктор като Demo(int a) и искате да използвате конструктора по подразбиране Java Demo(), задължително е да го посочите.
С други думи, в случай че вашият претоварващ конструктор в Java е отменен и искате да използвате конструктора по подразбиране Java, трябва да се уточни.
Стъпка 5) Разкоментирайте ред # 4-8. Запазете, компилирайте и стартирайте кода.
Защо имаме нужда от претоварване на конструктора Java?
Претоварване на конструктора в Java позволява множество конструктори в клас, всеки от които има различни списъци с параметри. Той подобрява гъвкавостта и подобрява ефективността на кода.
- Гъвкавост при създаване на обекти: Претоварването на конструктора ви позволява да инициализирате обекти по различни начини, в зависимост от броя или вида на параметрите.
- Повторна употреба на кода: Можете да използвате повторно логиката на конструктора, като извикате един конструктор от друг чрез ключовата дума this().
- Подобрена четливост: Претоварените конструктори помагат да се направи кодът по-интуитивен, като предлагат специфични опции за конструктор за различни нужди за инициализация.
- Инициализация по подразбиране и по избор: Претоварването на конструктора ви позволява лесно да създавате обекти по подразбиране и потребителски инициализирани.
