Како најбоље применити преоптерећење конструктора у Јави?



Овај чланак ће вас упознати са Преоптерећењем конструктора у Јави. Објашњење ће пратити програмска демонстрација.

Појава Јаве заузела је свет програмирања и главни разлог за то су бројне функције које је донео са собом. У овом чланку разговарали бисмо о преоптерећењу конструктора у . У овом чланку ће бити речи о следећим упутама,

Па кренимо онда,





Преоптерећење конструктора у Јави

Шта је конструктор?

Конструктор је блок кода који се користи за креирање објекта класе. Свака класа има конструктор, било да је то нормална класа или апстрактна класа. Конструктор је попут методе, али без повратног типа. Када за класу није дефинисан ниједан конструктор, преводилац креира задати конструктор.

ц ++ сортирање низа у растућем редоследу

Пример



јавна класа Студент {// без конструктора привате Стринг име привате инт аге привате Стринг стд // геттерс анд сеттерс публиц воид дисплаи () {Систем.оут.принтлн (тхис.гетНаме () + '' + тхис.гетАге () + ' '+ тхис.гетСтд ())} публиц статиц воид маин (Стринг аргс []) {// за употребу методе приказа класе Студент, креирамо објекат Студент Студент студент = нев Студент () // јер нисмо дефинисали ниједан конструктор , компајлер креира подразумевани конструктор. тако да студент.дисплаи ()}}

У горњем програму, задани конструктор креира компајлер тако да се тај објекат креира. Морате имати конструктор.

Ово нас доводи до следећег чланка изПреоптерећење конструктора у Јави.

Потреба за другим конструкторима

У горњем примеру студентски објекат се може креирати само са подразумеваним конструктором. Где сви остали атрибути ученика нису иницијализовани. Али могу постојати одређени други конструктори, који се користе за иницијализацију стања објекта. нпр. -



јавна класа Студент {// атрибути Име низа инт аге Стринг стд // Конструктори јавни студент (Име низа) {// Конструктор 1 тхис.наме = наме} јавни студент (Име низа, Стд стд) {// Конструктор 2 тхис.наме = наме тхис.стд = стд} јавни студент (Стринг наме, Стринг стд, инт аге) {// Конструктор 3 тхис.наме = наме тхис.стд = стд тхис.аге = аге} публиц воид дисплаи () {Систем.оут .принтлн (тхис.гетНаме () + '' + тхис.гетАге () + '' + тхис.гетСтд ())} публиц статиц воид маин (Стринг аргс []) {Студент сту1 = нев Студент ('АБЦ') сту1 .дисплаи () Студент сту2 = нови студент ('ДЕФ', '5-Ц') сту2.дисплаи () Студент сту3 = нови студент ('ГХИ', '6-Ц', 12) сту3.дисплаи ()}}

Ово нас доводи до следећег чланка изПреоптерећење конструктора у Јави.

ова () референца

ова референца () се може користити унутар параметарског конструктора за имплицитни позив заданог конструктора. Имајте на уму да би ово () требало да буде прва изјава унутар конструктора.

Пример

публиц Студент () {} // Конструктор 4 публиц Студент (Име низа, Стринг стд, инт аге) {// Конструктор 3 тхис () // позваће подразумевани конструктор. * Ако то није прва изјава конструктора, догодиће се ГРЕШКА * тхис.наме = наме тхис.стд = стд тхис.аге = аге

Белешка

  • Позив рекурзивног конструктора је неважећи у јави
  • Ако смо дефинисали било који параметарски конструктор, онда компајлер неће креирати подразумевани конструктор. и обрнуто, ако не дефинишемо ниједан конструктор, компајлер подразумевано ствара конструктор (познат и као конструктор но-арг) током компајлирања
  • Позивање конструктора мора бити прва изјава конструктора у Јави

Тако смо дошли до краја овог чланка о „Преоптерећењу конструктора у Јави“. Ако желите да сазнате више, погледајте Едурека, поуздана компанија за учење на мрежи. Едурекин курс за обуку и сертификацију Јава Ј2ЕЕ и СОА осмишљен је тако да вас оспособи за основне и напредне Јава концепте заједно са разним Јава оквирима попут Хибернате & Спринг.

Имате питање за нас? Молимо вас да га спомињете у одељку за коментаре овог блога и јавићемо вам се што је пре могуће.