A Constructor jellemzői
- A konstruktor nevének meg kell egyeznie az osztály nevével.
- A visszatérés típusa érvénytelen.
- A konstruktor nem lehet statikus, absztrakt és végleges.
A kivitelező típusai
- Alapértelmezett
- Paraméter nélküli
- Paraméterezett
1. Alapértelmezett kivitelező
Az alapértelmezett konstruktort a Java fordító hozza létre, amikor a kódoló nem deklarál semmilyen konstruktort az osztályhoz, és ez a konstruktor nem tartalmaz argumentumot. A Java fájl nem tartalmaz kódot az alapértelmezett konstruktorhoz. Az alapértelmezett konstruktorkód a Java kód fordításakor jön létre, és a .osztály fájl.
2. Paraméter nélküli kivitelező
Ha egy konstruktort minden paraméter vagy argumentum nélkül deklarálunk, akkor paraméter nélküli konstruktornak nevezzük. A paraméter nélküli konstruktor úgy működik, mint egy alapértelmezett konstruktor, és ez a konstruktor tartalmazhat utasításokat, vagy lehet üres is.
3. Paraméterezett kivitelező
Ha bármelyik konstruktort egy vagy több paraméterrel deklaráljuk, akkor paraméterezett konstruktornak nevezzük. A konstruktor paraméterértékeit az objektum létrehozásakor adjuk át.
1. példa: Paraméter nélküli konstruktor létrehozása
A következő kód bemutatja, hogyan kell használni a paraméter nélküli konstruktort. Korábban említettük, hogy a konstruktor metódus neve megegyezik az osztály nevével. Itt az osztály neve:con1,'tehát a paraméter nélküli konstruktor neve'con1 ().'Két osztályváltozó'név"és"kor,”itt vannak deklarálva. Az objektumváltozó deklarálásakorobj,'felhívják a konstruktort, és egy adott üzenetet nyomtatnak. Ezt követően két értéket rendelünk az osztályváltozókhoz, és később kinyomtatjuk őket a „obj” tárgy.
nyilvános osztály con1// változók deklarálása
Karakterlánc neve;
int kor;
// Paraméter nélküli konstruktor
con1 ()
Rendszer.ki.println ("A konstruktort meghívjuk.");
// A változók inicializálása
név = "Fahim Reza";
életkor = 30;
// main () metódus
public static void main (String [] érvel)
// Objektum létrehozása
con1 obj = új con1 ();
// Nyomtassa ki az objektum tulajdonságainak értékeit
Rendszer.ki.print ("A kor" + obj.név + "is" + obj.kor);
Kimenet:
Az alábbi kép a kód kimenetét mutatja. A konstruktort az objektum létrehozásakor hívják meg, és a következő üzenet jelenik meg:A konstruktort hívják”Van nyomtatva. A 'név"és"kor'a konstruktor belsejében vannak kijelölve. Ezeknek a változóknak az értékeit később kinyomtatjuk.
2. példa: Paraméterezett konstruktor létrehozása
A következő kód kiszámítja a munkavállaló teljes fizetését az alapilletmény alapján, és a kiszámított fizetés mellé kinyomtatja az alkalmazott egyéb adatait. Itt hét osztályváltozót deklarálunk. A kivitelező, neve:con2 (),három paramétere van. Az első két paraméter a karakterlánc értékeit veszi fel anév"és"post'paraméterek, a harmadik paraméter pedig a "alapvető'paraméter. Ezeknek a paramétereknek az értékei átkerülnek az objektum létrehozásakor. A konstruktor ezekkel az értékekkel inicializálja az osztályváltozókat, és a többi értéket kiszámítja a 'alapvető'paraméter. Ezután kinyomtatják az alkalmazott nevét, beosztását és fizetését.
nyilvános osztály con2// Változók deklarálása
Karakterlánc neve;
Karakterlánc;
int Basic;
dupla HouseRent;
kettős Orvosi;
kettős szállítás;
kettős fizetés;
// Paraméterezett konstruktor
con2 (String neve, String post, int basic)
ez.név = név;
ez.post = post;
ez.Alap = alap;
ez.HouseRent = alap * 0.3;
ez.Orvosi = alap * 0.2;
ez.Szállítás = alap * 0.1;
Fizetés = alap + házkölcsön + orvosi + közlekedés;
// main () metódus
public static void main (String [] érvel)
// Objektum létrehozása
con2 obj = new con2 ("Mir Sabbir", "Könyvelő", 65000);
// Nyomtassa ki az objektum tulajdonságainak értékeit
Rendszer.ki.print ("Alkalmazott neve:" + objekt.név + "\ n" + "Hozzászólás:" + objekt.post +
"\ n" + "Fizetés: TK" + obj.Fizetés);
Kimenet:
Az alábbi kép a kód kimenetét mutatja. Itt az alkalmazott nevét, beosztását és alapilletményét megadják az objektum létrehozásának kimutatásában. A teljes fizetés, név és beosztás itt van kinyomtatva.
3. példa: Konstruktor lánc létrehozása
Fontos tudnivaló az objektum-orientált programozás öröklődési jellemzőiről, hogy megértsük a konstruktor láncolás fogalmát. Amikor új osztályt hoznak létre egy másik osztály öröklésével, akkor öröklésnek hívják. Ebben az esetben a szülő vagy az alaposztály minden tulajdonsága elérhető a gyermek vagy a származtatott osztályból. A gyermekosztály objektumának létrehozásakor automatikusan felhívja a szülőosztály konstruktorát, mielőtt meghívná a saját konstruktorát. A 'szuper()'metódust más nyelveken használják a szülő konstruktor meghívására, de a Java fordító automatikusan meghívja ezt a módszert. A konstruktorok ilyen felhasználását konstruktor láncolásnak nevezzük, és ezt a folyamatot ebben a példában mutatjuk be. Itt a szülő osztály neve 'szülő"és a gyermekosztály neve"con3.'Van egy másik módszer is'kombájn()'a gyermek osztályban, amely ötvözi a szülő és a gyermek konstruktorokban hozzárendelt értékeket.
osztály szülője// Változó deklarálása
String strVal;
// Szülő konstruktor
szülő()
Rendszer.ki.println ("a szülőépítőt hívják");
strVal = "tetszik";
nyilvános osztály con3 kiterjeszti a szülőt
// Változó deklarálása
Karakterlánc childStrVal;
// Gyereképítő
con3 ()
Rendszer.ki.println ("A gyermek konstruktort hívják");
childStrVal = strVal + "Java programozás";
// Egy másik módszer a karakterláncok kombinálására
Vonós kombájn ()
adja vissza ezt.childStrVal;
// main () metódus
public static void main (String [] érvel)
// Objektum létrehozása
con3 obj = új con3 ();
// Nyomtassa ki az objektum tulajdonságainak értékeit
Rendszer.ki.nyomtatás (objekt.kombájn());
Kimenet:
Az alábbi kép a kód kimenetét mutatja. Az első üzenet a szülő konstruktortól, míg a második a gyermek konstruktortól származik. Az utolsó üzenet a 'kombájn()módszer.
Következtetés
A konstruktor fogalmát és a különböző konstruktorok használatát ebben az oktatóanyagban ismertetjük egyszerű Java-kód-példákkal, amelyeket a kezdő felhasználók követhetnek. Remélhetőleg ezek a példák segítettek megérteni a Java konstruktor alapjait.