ezt a kulcsszót Java
⚡ Okos összefoglaló
Java A this Keyword egy referenciaváltozó, amely egy metóduson vagy konstruktoron belüli aktuális objektumra mutat. LessAz onok lefedik a célt, a gyakori felhasználásokat, az elnevezési ütközéseket, a konstruktor láncolását és egy működő példát.

Miben található ez a kulcsszó? Java?
Az ezt a kulcsszót Java egy referenciaváltozó, amely egy metódus vagy egy konstruktor aktuális objektumára hivatkozik. A kulcsszó használatának fő célja a Java célja, hogy kiküszöbölje az azonos nevű osztályattribútumok és paraméterek közötti zavart.
Ennek a kulcsszónak a használata Java
A következőkben a kulcsszó különböző felhasználási módjait láthatjuk Java:
- Használható az aktuális osztály példányváltozójára való hivatkozásra.
- Használható az aktuális osztály konstruktorának meghívására vagy inicializálására.
- Argumentumként átadható egy metódushívásban.
- Argumentumként átadható egy konstruktorhívásban.
- Használható az aktuális osztálypéldány visszaadására.
Kattints itt ha a videó nem érhető el
Hogyan értsük meg ezt a kulcsszót egy példával

- Osztály: osztály Számla
- Példányváltozó: a és b
- Módszer Adatok beállítása: A és b értékének beállítása.
- Módszer Adatok megjelenítése: A és b értékeinek megjelenítése.
- Fő módszer: ahol létrehozunk egy objektumot az Account osztályhoz, és meghívjuk a set data és a show data metódusokat.
Séta a fordítóprogram zűrzavarán keresztül
Fordítsuk le és futtassuk a kódot.
Az A és B számára várt kimenetet 2-re, illetve 3-ra kell inicializálni.
De az érték 0. Miért? Vizsgáljuk meg.
A Set data metódusban az argumentumokat a-ként és b-ként deklaráljuk, míg a példányváltozókat szintén a-nak és b-nek nevezzük.
Végrehajtás közben a fordító zavarban van. Vajon a hozzárendelt operátor bal oldalán lévő „a” a példányváltozó vagy a lokális változó-e. Ezért nem állítja be az „a” értékét, amikor a metódus adatkészletet hívják.
A megoldás ebben a kulcsszóban rejlik.
Fűzd be az „a” és a „b” betűt is a következővel: Java ezt a kulcsszót egy pont (.) operátor követi.
A kód végrehajtása során, amikor egy objektum meghívja a setdata metódust, a this kulcsszót az „obj” objektumkezelő váltja fel. (Lásd az alábbi képet.)
Tehát most a fordító tudja,
- A bal oldalon található „a” egy példányváltozó.
- Míg a jobb oldalon található „a” egy lokális változó.
Az változók helyesen inicializálódnak, és megjelenik a várt kimenet.
Hogyan kezeli a fordítóprogram a több objektumot
Tegyük fel, hogy különböző neveket választasz a példányváltozóknak és a metódus argumentumainak.
De ezúttal két objektumot hoz létre az osztályból, amelyek mindegyike a set data metódust hívja meg.
Hogyan fogja a fordítóprogram meghatározni, hogy az 1-es vagy a 2-es objektum példányváltozóján kell-e dolgoznia?
Nos, a A fordító implicit módon hozzáfűzi a példányváltozót a this kulcsszóval (lásd az alábbi képet).
Olyan, hogy amikor az 1. objektum a set data metódust hívja, egy példányváltozót hozzáfűz a referenciaváltozója.
Amíg a 2. objektum a set data metódust hívja, a 2. objektum példányváltozója módosul.
A fordítóprogram ezt automatikusan kezeli. Nem kell explicit módon hozzáfűzni a this kulcsszót, kivéve, ha egy kivételes helyzet megköveteli.
Példa: ez a kulcsszó itt: Java A Code
Példa: A kulcsszó használatának elsajátítása.
Step 1) Másolja a következő kódot egy jegyzettömbbe.
class Account{ int a; int b; public void setData(int a ,int b){ a = a; b = b; } public void showData(){ System.out.println("Value of A ="+a); System.out.println("Value of B ="+b); } public static void main(String args[]){ Account obj = new Account(); obj.setData(2,3); obj.showData(); } }
Step 2) Mentse el, fordítsa le és futtassa a kódot.
Step 3) Az a és b értéke nulla? A hiba kijavításához fűzze hozzá a 6. és 7. sort a következőhöz: ezt kulcsszó.
this.a =a; this.b =b;
Step 4) Mentsd el, fordítsd le és futtasd a kódot. Ezúttal az a és b értékei 2-re, illetve 3-ra vannak állítva.
GYIK
Tekintse meg cikkünket Java Interjú kérdések: - Kattintson ide











