java this keyword tutorial with code examples
Ta vadnica podrobno pojasnjuje posebno ključno besedo 'to' v Javi s preprostimi primeri kode. Zajema, kako, kdaj in kje uporabiti ključno besedo 'to':
V tej vadnici smo predstavili enega pomembnih konceptov v Javi - ključno besedo ‘this’. Raziskovali bomo podrobnosti ključne besede ‘this’ in predstavili tudi nekaj primerov njene uporabe v Javi.
Ključna beseda 'to' v Javi je referenčna spremenljivka. Referenčna spremenljivka 'this' kaže na trenutni objekt v programu Java . Če želite torej dostopati do katerega koli člana ali funkcije trenutnega predmeta, lahko to storite z uporabo reference 'this'.
Kaj se boste naučili:
- Java 'this' Uvod
- Kdaj uporabiti 'to' v Javi?
- Dostop do spremenljivke primerka s pomočjo tega
- ‘This’ Passed As The Method Parameter
- Prikličite trenutno metodo predavanja s tem
- Vrnite se s tem
- Uporaba 'this' za priklic trenutnega konstruktorja razredov
- Uporaba tega kot argumenta konstruktorju
- Pogosto zastavljena vprašanja
- Zaključek
Java 'this' Uvod
Sklic 'to' se na splošno imenuje 'ta kazalec', saj kaže na trenutni objekt. 'Ta kazalec' je uporaben, če obstaja nekaj imena za atribute in parametre razreda. Ko pride do take situacije, 'ta kazalec' odpravi zmedo, saj lahko do parametrov dostopamo s kazalcem 'this'.
V tej vadnici bomo skupaj s primeri razpravljali o uporabi kazalca ‘this’ v različnih situacijah.
Kdaj uporabiti 'to' v Javi?
V Javi ima izraz 'to' naslednje uporabe:
- Sklic 'to' se uporablja za dostop do spremenljivke primerka razreda.
- 'To' lahko celo predate kot argument v klicu metode.
- 'This' lahko uporabimo tudi za implicitni priklic trenutne metode razreda.
- Če želite iz metode vrniti trenutni objekt, uporabite 'to'.
- Če želite priklicati trenutni konstruktor razreda, lahko uporabite 'this'.
- Konstruktor ima lahko tudi 'to' kot argument.
Poglejmo zdaj vsako od teh uporab ločeno.
Dostop do spremenljivke primerka s pomočjo tega
Spremenljivke primerka parametrov razreda in metode imajo lahko isto ime. S kazalcem ‘this’ lahko odstranimo dvoumnost, ki izhaja iz tega.
Spodnji program Java prikazuje, kako lahko 'to' uporabimo za dostop do spremenljivk primerka.
class this_Test { int val1; int val2; // Parameterized constructor this_Test(int val1, int val2) { this.val1 = val1 + val1; this.val2 = val2 + val2; } void display() { System.out.println('Value val1 = ' + val1 + ' Value val2 = ' + val2); } } class Main{ public static void main(String() args) { this_Test object = new this_Test(5,10); object.display(); } }
Izhod:
V zgornjem programu lahko vidite, da imajo spremenljivke primerka in parametri metode enaka imena. Kazalec 'this' s spremenljivkami primerka uporabljamo za razlikovanje med spremenljivkami primerka in parametri metode.
‘This’ Passed As The Method Parameter
Ta kazalec lahko posredujete tudi kot parameter metode. Posredovanje tega kazalca kot parametra metode je običajno potrebno, ko imate opravka z dogodki. Na primer, predpostavimo, da želite sprožiti nek dogodek na trenutnem predmetu / ročaju, potem ga morate sprožiti s tem kazalcem.
Spodaj je razstavni program, v katerem smo ta kazalec predali metodi.
class Test_method { int val1; int val2; Test_method() { val1 = 10; val2 = 20; } void printVal(Test_method obj) { System.out.println('val1 = ' + obj.val1 + ' val2 = ' + obj.val2); } void get() { printVal(this); } } class Main{ public static void main(String() args) { Test_method object = new Test_method(); object.get(); } }
Izhod:
V tem programu v glavni funkciji ustvarimo objekt razreda Test_method in nato s tem objektom pokličemo metodo get (). Znotraj metode get () se kazalec ‘ta’ posreduje metodi printVal (), ki prikazuje trenutne spremenljivke primerka.
Prikličite trenutno metodo predavanja s tem
Tako kot lahko metodi posredujete kazalec ‘this’, lahko tudi s tem kazalcem prikličete metodo. Če sploh pozabite vključiti ta kazalnik, medtem ko prikličete metodo trenutnega razreda, ga prevajalnik doda za vas.
Primer sklicevanja na metodo razreda z ‘this’ je podan spodaj.
class Test_this { void print() { // calling fuctionshow() this.show(); System.out.println('Test_this:: print'); } void show() { System.out.println('Test_this::show'); } } class Main{ public static void main(String args()) { Test_this t1 = new Test_this(); t1.print(); } }
Izhod:
V tem programu metoda razreda print () pokliče metodo show () s pomočjo tega kazalca, ko jo objekt razreda v glavni funkciji pokliče.
Vrnite se s tem
Če je vrsta vrnitve metode predmet trenutnega razreda, potem lahko priročno vrnete kazalec 'this'. Z drugimi besedami, trenutni predmet lahko vrnete iz metode s kazalcem ‘this’.
Spodaj je izvedba vračanja predmeta z uporabo kazalca ‘this’.
kaj je namen regresijskega testiranja
class Test_this { int val_a; int val_b; //Default constructor Test_this() { val_a = 10; val_b = 20; } Test_this get() { return this; } void display() { System.out.println('val_a = ' + val_a + ' val_b = ' + val_b); } } class Main{ public static void main(String() args) { Test_this object = new Test_this(); object.get().display(); } }
Izhod:
Zgornji program prikazuje metodo get (), ki vrne to, ki je predmet razreda Test_this. Z uporabo trenutnega predmeta, ki ga vrne metoda get (), se nato pokliče prikaz metode.
Uporaba 'this' za priklic trenutnega konstruktorja razredov
Kazalec ‘this’ lahko uporabite tudi za priklic konstruktorja trenutne cla.ss. Osnovna ideja je ponovna uporaba konstruktorja. Če imate v svojem razredu več konstruktorjev, jih lahko med seboj prikličete, kar povzroči veriženje konstruktorjev.
Razmislite o naslednjem programu Java.
class This_construct { int val1; int val2; //Default constructor This_construct() { this(10, 20); System.out.println('Default constructor
'); } //Parameterized constructor This_construct(int val1, int val2) { this.val1 = val1; this.val2 = val2; System.out.println('Parameterized constructor'); } } class Main{ public static void main(String() args) { This_construct object = new This_construct(); } }
Izhod:
V zgornjem programu imamo v razredu dva konstruktorja. Drugi konstruktor pokličemo s kazalcem ‘this’ iz privzetega konstruktorja razreda.
Uporaba tega kot argumenta konstruktorju
Kazalec ‘this’ lahko tudi posredujete kot argument konstruktorju. To je bolj koristno, če imate več razredov, kot je prikazano v naslednji izvedbi.
class Static_A { Static_B obj; Static_A(Static_B obj) { this.obj = obj; obj.display(); } } class Static_B { int x = 10; Static_B() { Static_A obj = new Static_A(this); } void display() { System.out.println('B::x = ' + x); } } class Main{ public static void main(String() args) { Static_B obj = new Static_B(); } }
Izhod:
Kot je prikazano v zgornji izvedbi, imamo dva razreda in konstruktor vsakega razreda pokliče konstruktor drugega razreda. V ta namen se uporablja kazalec ‘this’.
Pogosto zastavljena vprašanja
V # 1) Kakšna je razlika med tem in tem () v Javi?
Odgovor: V Javi se to nanaša na trenutni objekt, medtem ko se ta () nanaša na konstruktor z ustreznimi parametri. Ključna beseda 'to' deluje samo s predmeti. Klic »this ()« se uporablja za klicanje več konstruktorjev iz istega razreda.
V # 2) Ali je ta ključna beseda potrebna v Javi?
Odgovor: To je potrebno zlasti, kadar morate trenutni objekt prenesti iz ene metode v drugo ali med konstruktorji ali pa preprosto uporabiti trenutni objekt za druge operacije.
V # 3) Kakšna je razlika med tem () in super () v Javi?
Odgovor: Tako this () kot super () sta ključni besedi v Javi. Medtem ko ta () predstavlja konstruktor trenutnega predmeta z ujemajočimi se parametri, super () predstavlja konstruktor nadrejenega razreda.
V # 4) Ali lahko v konstruktorju uporabite to () in super ()?
Odgovor: Da, lahko ga uporabite. Konstruktor this () bo kazal na trenutni konstruktor, super () pa na konstruktor nadrejenega razreda. Ne pozabite, da bi morala biti ta () in super () prva izjava.
Zaključek
Ključna beseda 'to' je sklic na trenutni objekt v programu Java. Z njim se lahko izognemo zmedi, ki je posledica istih imen za spremenljivke razreda (spremenljivke primerka) in parametre metode.
Kazalec 'this' lahko uporabljate na več načinov, kot so dostop do spremenljivk primerka, posredovanje argumentov metodi ali konstruktorju, vračanje predmeta itd. Kazalec 'this' je pomembna ključna beseda v Javi in je koristna funkcija za dostop do trenutnega predmeta in njegovih članov in funkcij.
Upamo, da ste v tej vadnici spremljali uporabo ključne besede ‘this’ v Javi.
Priporočeno branje
- JAVA Vadnica za začetnike: 100+ praktičnih Javnih video vadnic
- Vadnica za refleksijo Java s primeri
- Vadnica za ravnanje z izjemami C # s primeri kode
- Vadnica Python DateTime s primeri
- Vadnica za funkcije / metode C # s primeri kode
- Java SWING Vadnica: Vsebnik, komponente in obdelava dogodkov
- Vadnica za Java Collections Framework (JCF)
- Vadnica Java vmesnika in abstraktnega razreda s primeri