Kā vislabāk realizēt konstruktora pārslodzi Java?



Šis raksts jūs iepazīstinās ar Java konstruktoru pārslodzi. Pēc paskaidrojuma sekos programmatiska demonstrācija.

Java atnākšana programmēšanas pasauli pārņēma ar vētru, un galvenais iemesls tam bija skaitliskās iezīmes. Šajā rakstā mēs apspriedīsim konstruktora pārslodzi . Šajā rakstā tiks apskatīti šādi norādījumi,

Tad ļaujiet mums sākt darbu,





Konstruktora pārslodze Java

Kas ir konstruktors?

Konstruktors ir koda bloks, ko izmanto, lai izveidotu klases objektu. Katrā klasē ir konstruktors, vai tā būtu normāla klase, vai abstraktā klase. Konstruktors ir gluži kā metode, bet bez atgriešanās veida. Ja klasei nav definēts konstruktors, kompilators izveido noklusējuma konstruktoru.

java programma fibonacci sērijām

Piemērs



publiskā klase Students {// nav konstruktora privāta Virknes nosaukums private int age private Virkne std // iegūst un iestatītāji publicē tukšumu display () {System.out.println (this.getName () + '' + this.getAge () + ' '+ this.getStd ())} public static void main (String args []) {// lai izmantotu Studentu klases attēlošanas metodi, izveidojiet Student objektu Student = new Student () //, tā kā mēs vēl neesam definējuši nevienu konstruktoru , kompilators izveido noklusējuma konstruktoru. lai students. displejs ()}}

Iepriekš minētajā programmā noklusējuma konstruktoru izveido kompilators, lai izveidotu objektu. Konstruktoram ir jābūt.

Tādējādi mēs nonākam pie šī raksta nākamā rakstaKonstruktora pārslodze Java.

Nepieciešamība pēc citiem konstruktoriem

Iepriekš minētajā piemērā Student objektu var izveidot tikai ar noklusējuma konstruktoru. Ja visi pārējie studenta atribūti netiek inicializēti. Bet var būt arī daži citi konstruktori, kurus izmanto objekta stāvokļa inicializēšanai. piemēram -



public class Student {// atribūti String name int age String std // Constructors public Student (String name) {// Constructor 1 this.name = name} public Student (String name, String std) {// Constructor 2 this.name = nosauciet šo.std = std} publisko studentu (virknes nosaukums, virknes standarts, int vecums) {// 3. konstruktors this.name = nosauciet šo.std = std this.age = vecums} public void display () {System.out .println (this.getName () + '' + this.getAge () + '' + this.getStd ())} public static void main (String args []) {Student stu1 = new Student ('ABC') stu1 .display () Studenta stu2 = jauns students ('DEF', '5-C') stu2.display () Studenta stu3 = jauns students ('GHI', '6-C', 12) stu3.display ()}}

Tādējādi mēs nonākam pie šī raksta nākamā rakstaKonstruktora pārslodze Java.

šī () atsauce

šo () atsauci var izmantot parametrizētā konstruktora iekšienē, lai netieši izsauktu noklusējuma konstruktoru. Lūdzu, ņemiet vērā, ka šim () vajadzētu būt pirmajam apgalvojumam konstruktora iekšienē.

Piemērs

public Student () {} // 4. konstruktora publiskais students (virknes nosaukums, String std, int vecums) {// Constructor 3 this () // sauks noklusējuma konstruktoru. * Ja tas nav pirmais konstruktora paziņojums, radīsies kļūda * this.name = nosaukums this.std = std this.age = age

Piezīme

  • Rekursīvā konstruktora izsaukums Java valodā nav derīgs
  • Ja mēs esam definējuši jebkuru parametrizētu konstruktoru, tad kompilators neveidos noklusējuma konstruktoru. un otrādi, ja mēs nenosakām nevienu konstruktoru, kompilators kompilēšanas laikā pēc noklusējuma izveido noklusējuma konstruktoru (pazīstams arī kā no-arg konstruktors)
  • Konstruktora izsaukumam jābūt pirmajam Java konstruktora paziņojumam

Tādējādi esam nonākuši pie šī raksta par ‘Konstruktoru pārslodze Java’ beigām. Ja vēlaties uzzināt vairāk, iepazīstieties ar Autors: uzticams tiešsaistes mācību uzņēmums Edureka. Edureka Java J2EE un SOA apmācības un sertifikācijas kurss ir paredzēts, lai apmācītu jūs gan galvenajiem, gan uzlabotajiem Java jēdzieniem kopā ar dažādiem Java ietvariem, piemēram, Hibernate & Spring.

Vai mums ir jautājums? Lūdzu, pieminējiet to šī emuāra komentāru sadaļā, un mēs sazināsimies ar jums pēc iespējas ātrāk.