A Java az egyik a következő programozási nyelvek egyike . Ez azt jelenti, hogy miközben a Java-ban programozunk, az adatok absztrakciójának, a polimorfizmusnak, az öröklődésnek stb. Minden erőteljes tulajdonsága van. Az OOP összes funkciójának lényege az Osztályok és Objektumok megvalósítása és egymással való kölcsönhatásuk. Ebben a cikkben külön megvizsgáljuk, hogyan lehet inicializálni egy objektumot a paraméterezett konstruktorokkal . Felhívjuk figyelmét, hogy a szükséges, mielőtt folytatja a kivitelezők munkáját.
xml transzformáció az informatikában példával
- Mi az a kivitelező?
- Alapértelmezett kivitelező vs paraméterezett kivitelező
- Objektumok átadása érvekként
- Alapértelmezett konstruktor hívása paraméterezett konstruktorról
- A kivitelező túlterhelése
Mi az a kivitelező?
A konstruktor alapvetően egy olyan módszer, amelyet automatikusan meghívnak, amikor az adott objektum (példány) létrejön. Az objektum adattagjainak inicializálására szolgál.
nyilvános osztály Edureka {Edureka () {System.out.println ('a konstruktor elkészült')}}
A kivitelező néhány jellemzője:
- Ugyanaz a neve, mint az osztály neve
- Nincs visszatérési típusa
A kivitelező típusai
- Alapértelmezett kivitelező
- Paraméterezett kivitelező
Alapértelmezett kivitelező vs paraméterezett kivitelező
Alapértelmezett kivitelező - Egy olyan paramétert, amely nem fogad el paramétert, alapértelmezett konstruktornak nevezünk. Az osztálydefinícióban nem szükséges egy konstruktor blokk. Ha nem ír kifejezetten konstruktort, a fordító automatikusan beszúr egyet.
Példa a Java alapértelmezett kivitelezőjére:
public class Edureka {Edureka () {System.out.println ('konstruktor vagyok')} public static void main (String args []) {Edureka obj = new Edureka ()}}
Kimenet: Kivitelező vagyok
Paraméterezett kivitelező - A konstruktort akkor hívjuk Parameterized Constructor-nak, ha elfogad egy meghatározott számú paramétert. Egy osztály adattagjainak inicializálása különálló értékekkel.
Példa a paraméterezett kivitelező bemutatására:
public class Edureka {Karaktersorozatnév int studentAge // konstruktor Edureka (Karaktersorozat neve, int kor) {studentName = név studentAge = kor} void display () {System.out.println (studentName + '' + studentAge)} public static void main ( Karakterláncok []) {Edureka myObj = új Edureka ('Manan', 19) myObj.display ()}}
Kimenet: Manan-19
A fenti példában egy karakterláncot és egy egész számot adunk át az objektumnak. Ezután a konstruktor inicializálja a studentName és a studentAge értékeket az átadott értékek felhasználásával. A megjelenítési módszer ekkor megadja a kívánt kimenetet.
Egy osztály paraméterezett konstruktorával meg kell adnia a kezdeti értékeket argumentumként, különben a fordító hibát jelent.
Objektumok átadása érvekként
Érveket is adhatunk, miközben létrehozunk egy osztály más példányait. Ily módon a paraméterezett konstruktorok kielégítik az egyik objektum értékeinek másolásának szükségességét.
Példa az objektumok átadására mint érvek:
nyilvános osztály Edureka {Karakterlánc diáknév Edureka (karakterlánc neve) {tanulóNév = név} Edureka (Edureka myObj) {this.studentName = myObj.studentName} érvénytelen megjelenítés () {System.out.println ('Student:' + hallgatónév)} public static void main (String args []) {Edureka obj1 = new Edureka ('Manan') / * az objektum átadása a konstruktor argumentumaként * ez a másolat-szerkesztő * / Edureka obj2 = új Edureka (obj1) rendszert hívja meg. out.println ('Obj1 nyomtatása -') obj1.display () System.out.println ('Obj2 nyomtatása -') obj2.display ()}}
Kimenet:
1. objektum nyomtatása -Manan2. objektum nyomtatása -Manan
A fenti példában az obj1 karakterláncot inicializáljuk. Ezután argumentumként adjuk át az obj1-et, miközben létrehozjuk az obj2-t. Végül, amikor mindkét objektum studentName változóját kinyomtatjuk a megjelenítési függvény segítségével, a „Manan” szót kapjuk.
Alapértelmezett konstruktor hívása Java-ban egy paraméterezett konstruktorról
Néha szükség van az alapértelmezett konstruktor meghívására ugyanazon osztály másik konstruktorától. ezt a kulcsszót teljesíti ezt a célt.
Példa egy paraméterezett konstruktortól érkező alapértelmezett konstruktor hívására:
nyilvános osztály Edureka {karakterlánc diáknév int studentAge karakterlánc tag Edureka () {member = 'YES'} Edureka (karakterlánc neve, int kor) {this () / * ez az alapértelmezett konstruktor * meghívására szolgál a paraméterezett konstruktor * / studentName = név studentAge = age} void display () {System.out.println (studentName + '-' + studentAge + '-' + 'Member' + member)} public static void main (String args []) {Edureka obj = new Edureka ('Manan', 21) obj.display ()}}
Kimenet: Manan - 21 - tag IGEN
A fenti példában, amikor paraméterezett konstruktort hívunk meg, először ennek () kulcsszavának segítségével hívja meg az alapértelmezett konstruktort. Az alapértelmezett konstruktor inicializálja a „member” változót „YES” értékre, majd folytatja a paraméterezett konstruktor végrehajtását.
A kivitelező túlterhelése
A konstruktor ugyanúgy támogatja a módszer túlterhelését, mint bármely más osztály. Különböző típusú vagy argumentumszám alapján különböző konstruktorokat hívnak meg.
Példa a konstruktor túlterhelésére:
public class Téglalap (int hosszúság int szélességű) String színe // konstruktor 1 Téglalap (int l, int b) {hossz = l szélesség = b color = 'Zöld'} // konstruktor 2 Téglalap (int l, int b, String c) {length = l width = b color = c} void display () {System.out.println ('Hossz-' + hossz + 'Szélesség-' + szélesség + 'Szín' + szín)} nyilvános statikus érvénytelen main (String args [ ]) {Téglalap obj1 = új téglalap (2,4) Téglalap obj2 = új téglalap (2,4, 'zöld') obj1.display () obj2.display ()}}
Kimenet: Hossz - 2 szélesség - 4 szín - zöldHossz - 2 szélesség - 4 szín - piros
Most, hogy megértette, hogy mik is a kivitelezők, és hogyan kell velük dolgozni, egy lépéssel közelebb kerül a Java megtanulásához. A konstruktorokhoz hasonló fogalmak egyszerűek, de rendkívül fontosak, mivel osztályokat és tárgyakat tartalmaznak. Részletesebb témákért és szórakoztató olvasmányokért iratkozzon fel az Edureka's-ra . Nyugodtan fizessen le hogy elindítsd a tanulásodat.
Van egy kérdésünk? kérjük, említse meg ezt a „Parameterized Constructor in Java” cikk megjegyzés rovatában, és a lehető leghamarabb kapcsolatba lépünk Önnel.