Java konstruktoru apmācība

Java Constructor Tutorial



Konstruktoru rīks ir ļoti svarīga un noderīga metode, ko izmanto objektorientētai programmēšanai. Konstruktors nav obligāti jādeklarē nevienai klasei, un šo rīku galvenokārt izmanto, lai inicializētu klases objektu objekta izveides laikā. Konstruktors nedarbojas tāpat kā citas parastās metodes. Drīzāk konstruktoru rīks tiek izsaukts automātiski, kad tiek deklarēts objekts, un tas piešķir objekta atmiņas vietu. Šī apmācība parādīs, kā Java klases programmēšanā var ieviest un izmantot dažāda veida lietotāja definētus konstruktorus.

Konstruktora iezīmes

  1. Konstruktora nosaukumam jābūt tādam pašam kā klases nosaukumam.
  2. Atgriešanās veids nav derīgs.
  3. Konstruktors nevar būt statisks, abstrakts un galīgs.

Konstruktoru veidi







  1. Noklusējuma
  2. Bez parametriem
  3. Parametrizēts

1. Noklusējuma konstruktors

Noklusējuma konstruktoru izveido Java kompilators, kad kodētājs klasei nedeklarē nevienu konstruktoru un šis konstruktors nesatur nevienu argumentu. Java failā nav nekāda noklusējuma konstruktora koda. Noklusējuma konstruktora kods tiek izveidots Java koda apkopošanas laikā un tiek saglabāts .klase failu.



2. Konstruktors bez parametriem

Ja konstruktors tiek deklarēts bez parametriem vai argumentiem, to sauc par konstruktoru bez parametriem. Konstruktors bez parametriem darbojas kā noklusējuma konstruktors, un šis konstruktors var saturēt paziņojumus vai arī tas var būt tukšs.



3. Parametrēts konstruktors

Ja jebkurš konstruktors tiek deklarēts ar vienu vai vairākiem parametriem, to sauc par parametrizētu konstruktoru. Konstruktora parametru vērtības tiek nodotas objekta izveides laikā.





1. piemērs: konstruktora izveide bez parametriem

Šis kods parāda, kā izmantot konstruktoru bez parametriem. Iepriekš tika minēts, ka konstruktora metodes nosaukums būs tāds pats kā klases nosaukums. Šeit klases nosaukums ir “ con1 , Tātad konstruktora nosaukums bez parametriem ir “ con1 () . 'Divi klases mainīgie,' vārds ' un ' vecums , ’Ir deklarēti šeit. Objekta mainīgā deklarēšanas laikā obj , ’Tiks piezvanīts konstruktoram un tiks izdrukāts konkrēts ziņojums. Pēc tam klases mainīgajos tiek piešķirtas divas vērtības un vēlāk tiek drukātas, izmantojot “Obj” objekts.

publiski klasecon1{

// deklarēt mainīgos
Stīga vārds;
intvecums;

// Konstruktors bez parametriem
con1() {
Sistēma .ārā.println('Konstruktoru sauc.');

// Inicializējiet mainīgos
vārds= 'Fahims Rezā';
vecums= 30;
}

// main () metode
publiski statisks spēkā neesošsgalvenais( Stīga []args) {

// Izveidot objektu
con1 obj= jaunscon1();

// Drukāt objekta rekvizītu vērtības
Sistēma .ārā.drukāt('Vecums' +obj.vārds + 'ir' +obj.vecums);
}
}

Izeja:



Nākamajā attēlā parādīta koda izvade. Konstruktors tiek izsaukts objekta izveidošanas un ziņojuma laikā Tiek saukts konstruktors ir iespiests. Vērtības ' vārds ' un ' vecums ”Ir piešķirtas konstruktora iekšpusē. Šo mainīgo vērtības tiek drukātas vēlāk.

2. piemērs: izveidojiet parametru konstruktoru

Šis kods aprēķinās darbinieku kopējo algu, pamatojoties uz pamatalgu, un kopā ar aprēķināto algu izdrukās citu šī darbinieka informāciju. Šeit tiek deklarēti septiņi klases mainīgie. Konstruktors ar nosaukumu “ con2 () , Ir trīs parametri. Pirmie divi parametri ņems virkņu vērtības “ vārds ' un ' ziņu Parametrus, un trešais parametrs uzņems skaitlisko vērtību pamata 'Parametrs. Šo parametru vērtības tiks nodotas objekta izveides laikā. Konstruktors inicializēs klases mainīgos ar šīm vērtībām un pārējās vērtības aprēķinās, pamatojoties uz “ pamata 'Parametrs. Pēc tam tiks izdrukāts darbinieka vārds, amats un alga.

publiski klasecon2{

// Deklarēt mainīgos
Stīga vārds;
Stīga ziņu;
intPamata;
dubultāHouseRent;
dubultāMedicīnas;
dubultāTransports;
dubultāAlga;

// Parametrēts konstruktors
con2( Stīga vārds, Stīga ziņa,intpamata) {
šo.vārds =vārds;
šo.ziņu =ziņu;
šo.Pamata =pamata;
šo.HouseRent =pamata*0.3;
šo.Medicīnas =pamata*0.2;
šo.Transports =pamata*0,1;
Alga=pamata+HouseRent+Medicīnas+Transports;
}

// main () metode
publiski statisks spēkā neesošsgalvenais( Stīga []args) {

// Izveidot objektu
con2 obj= jaunscon2('Mir Sabbir','Grāmatvedis',65000);

// Drukāt objekta rekvizītu vērtības
Sistēma .ārā.drukāt('Darbinieka vārds: ' +obj.vārds + ' n' + 'Ziņa:'+obj.ziņu +
' n' + 'Alga: TK'+obj.Alga);
}
}

Izeja:

Nākamajā attēlā parādīta koda izvade. Šeit objekta izveides paziņojumā ir norādīts darbinieka vārds, amats un pamatalga. Šeit tiek izdrukāta kopējā alga, vārds un amats.

3. piemērs. Izveidojiet konstruktoru ķēdi

Lai saprastu konstruktoru ķēdes jēdzienu, ir svarīgi zināt par objektorientētās programmēšanas mantojuma iezīmi. Ja jauna klase tiek izveidota, mantojot citu klasi, to sauc par mantojumu. Šajā gadījumā visi vecāku vai pamatklases rekvizīti ir pieejami no pakārtotās vai atvasinātās klases. Izveidojot pakārtotās klases objektu, tas automātiski izsauc vecāku klases konstruktoru, pirms izsauc savu konstruktoru. “ super () Metode tiek izmantota citās valodās, lai izsauktu vecāku konstruktoru, bet Java kompilators šo metodi izsauc automātiski. Konstruktoru izmantošanu šādā veidā sauc par konstruktoru ķēdēšanu, un šis process ir parādīts šajā piemērā. Šeit vecāku klases nosaukums ir “ vecāks 'Un bērnu klases nosaukums ir' con3 . ”Ir vēl viena metode ar nosaukumu“ apvienot () Bērnu klasē, kas apvieno vecāku un pakārtoto konstruktoru piešķirtās vērtības.

klasevecāks{

// Deklarēt mainīgo
Stīga strVal;

// Vecāku konstruktors
vecāks(){
Sistēma .ārā.println('Vecāku konstruktoru sauc');
strVal= 'Man patīk ';
}
}

publiski klasecon3pagarinavecāks{

// Deklarēt mainīgo
Stīga childStrVal;

// Bērnu konstruktors
con3(){
Sistēma .ārā.println('Bērnu konstruktoru sauc');
childStrVal=strVal+ 'Java programmēšana';
}

// Vēl viena virkņu apvienošanas metode
Stīga kombinēt()
{
atgriezties šo.childStrVal;
}

// main () metode
publiski statisks spēkā neesošsgalvenais( Stīga []args) {

// Izveidot objektu
con3 obj= jaunscon3();
// Drukāt objekta rekvizītu vērtības
Sistēma .ārā.drukāt(obj.kombinēt());
}
}

Izeja:

Nākamajā attēlā parādīta koda izvade. Pirmais ziņojums tiek izdrukāts no vecākā konstruktora, bet otrais ziņojums - no pakārtotā konstruktora. Pēdējais ziņojums tiek izdrukāts, zvanot uz “ apvienot () ’Metode.

Secinājums

Konstruktora jēdziens un dažādu konstruktoru pielietojums ir paskaidrots šajā apmācībā, izmantojot vienkāršus Java koda piemērus, ko iesācēji var sekot. Cerams, ka šie piemēri ir palīdzējuši jums izprast Java konstruktora pamatus.