see märksõna sisse Java
Milles see märksõna on? Java?
see märksõna sisse Java on viitemuutuja, mis viitab meetodi või konstruktori praegusele objektile. Selle märksõna kasutamise peamine eesmärk Java eesmärk on kõrvaldada segadus klassi atribuutide ja samade nimedega parameetrite vahel.
Selle märksõna kasutamine Java
Järgnevalt on toodud märksõna „selle” erinevad kasutusviisid Java:
- Seda saab kasutada praeguse klassi eksemplarimuutujale viitamiseks
- Seda saab kasutada praeguse klassikonstruktori käivitamiseks või käivitamiseks
- Seda saab meetodikutses argumendina edasi anda
- Seda saab konstruktorikutses argumendina edasi anda
- Seda saab kasutada praeguse klassi eksemplari tagastamiseks
Click siin kui video pole juurdepääsetav
Mõistke märksõna „see” näite abil.
- klass: klassi konto
- Eksemplari muutuja: a ja b
- Meetod Määra andmed: a ja b väärtuse määramiseks.
- Meetod Näita andmeid: a ja b väärtuste kuvamiseks.
- Peamine meetod: kus loome objekti Konto klassile ja kutsume meetodid seada andmeid ja näidata andmeid.
Kompileerime ja käivitame koodi
Meie eeldatav väljund A ja B jaoks tuleks lähtestada vastavalt väärtustele 2 ja 3.
Kuid väärtus on 0, miks? Lase uurida.
Meetodis Set data deklareeritakse argumendid kui a ja b, samas kui eksemplari muutujaid nimetatakse ka a ja b.
Täitmise ajal on kompilaator segaduses. Kas "a" määratud operaatori vasakul küljel on eksemplari muutuja või kohalik muutuja. Seega ei määra see meetodikomplekti andmete kutsumisel a väärtust.
Lahenduseks on märksõna "see".
Lisage nii "a" kui "b" tähega Java sellele märksõnale järgneb punkt (.) operaator.
Koodi täitmise ajal, kui objekt kutsub meetodit "setdata". Märksõna "see" asendatakse objektikäsitlejaga "obj". (Vaata allolevat pilti).
Nüüd teab koostaja,
- Vasakpoolses servas olev "a" on eksemplari muutuja.
- Parempoolne "a" on kohalik muutuja
. muutujad on õigesti lähtestatud ja kuvatakse oodatav väljund.
Oletame, et olete piisavalt tark, et valida eksemplari muutuja ja meetodite argumentidele erinevad nimed.
Kuid seekord loote kaks klassi objekti, millest igaüks kutsub välja andmemäärangu meetodi.
Kuidas kompilaator määrab, kas see peaks töötama objekti 1 või objekti 2 eksemplarimuutujal.
Noh, see on kompilaator lisab kaudselt eksemplari muutuja märksõnaga "see" (pilt allpool).
Nii, et kui objekt 1 kutsub välja andmekomplekti meetodi, lisatakse eksemplari muutuja selle võrdlusmuutuja juurde.
Sel ajal, kui objekt 2 kutsub välja andmekomplekti meetodi, muudetakse objekti 2 eksemplari muutujat.
Selle protsessi eest hoolitseb kompilaator ise. Te ei pea seda märksõna selgesõnaliselt lisama, välja arvatud juhul, kui tegemist on erandliku olukorraga, nagu meie näites.
see märksõna sisse Java koos Näitega
Näide: Kasutage märksõna "see" õppimiseks
Step 1) Kopeerige järgmine kood märkmikusse.
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) Salvestage, kompileerige ja käivitage kood.
Step 3) Kas a & b väärtus on näidatud nullina? Vea parandamiseks lisage read # 6 ja 7 "see” märksõna.
this.a =a; this.b =b;
Step 4) Salvestage, kompileerige ja käivitage kood. Seekord on a & b väärtused seatud vastavalt 2 ja 3 peale.
kokkuvõte
- see Märksõna sisse Java on viitemuutuja, mis viitab praegusele objektile.
- Üks selle märksõna kasutusvõimalusi Java on viidata praegusele klassi eksemplari muutujale
- Seda saab kasutada praeguse klassikonstruktori käivitamiseks või käivitamiseks
- Seda saab meetodikutses argumendina edasi anda
- see osuti sisse Java saab konstruktorikutses argumendina edasi anda
- see operaator sisse Java saab kasutada praeguse klassi eksemplari tagastamiseks
- see sisse Java on viide praegusele objektile, mille meetodit kasutatakse.
- Saate kasutada "seda" märksõna, et vältida nimetamiskonflikte oma eksemplari/objekti meetodis/konstruktoris.
Vaadake meie artiklit Java Intervjuu küsimused: - Kliki siia