Peamine erinevus - see vs Java Java
Java programmeerimisel kasutatakse märksõnu "see" ja "super". Neid märksõnu ei saa kasutada muutujate ega muu identifikaatori nimena. Java toetab objektile orienteeritud programmeerimist (OOP). Programmi või tarkvara saab modelleerida objektide abil. Objektid on klasside abil ebamugavad. Üks OOP sammas on pärimine. See tagab koodi korduvkasutatavuse. Juba olemasolevad klassid on superklassid ja tuletatud klassid on alaklassid. Super märksõna saab kasutada superklassist objekti viitamiseks. Süsteemis on mitu objekti. Märksõna 'see' kasutatakse praeguse objekti viitamiseks. Peamine erinevus selle ja superi vahel on "see" on võrdlusmuutuja, mida kasutatakse praeguse objekti viitamiseks, samal ajal kui "super" on võrdlusmuutuja, mida kasutatakse vahetu superklass-objekti viitamiseks.
SISU
1. Ülevaade ja peamised erinevused
2. Mis see on Java-s
3. Mis on Java-s super?
4. Sarnasused selle ja Java-i superi vahel
5. Kõrvuti võrdlus - see vs Java Java tabelina
6. Kokkuvõte
Mis see on Javas?
Märksõna 'see' kasutatakse praeguse objekti tähistamiseks. Vaadake antud Java-programmi.
Joonis 01: Java-programm seda märksõna kasutades
Java-s on kolme tüüpi muutujaid. Need on näiteks muutujad, lokaalsed muutujad ja klassi muutujad. Vastavalt ülaltoodud programmile on klassil Töötaja kaks eksemplari muutujat. Nad on id ja nimi. Kohalikud muutujad on meetoditele kuuluvad muutujad. Klassimuutujaid jagavad kõik objektid. ID ja nimi edastatakse töötaja konstruktorile. Kui programmeerija kirjutab id = id; see ei lähtesta eksemplari muutujaid, kuna Konstruktoril on juba ID ja nimi. Näiteks muutujate jaoks pole väärtusi. Niisiis kuvatakse nende printimine tühjaks. Selle kasutamisel viitab see praegusele objektile. Seetõttu saab konstruktorile id ja nime anda eksemplari muutujad.
Märksõna 'see' saab kasutada praeguse klassi meetodi käivitamiseks. Vaadake antud java programmi.
avalik klass ThisDemo {
public staatiline void main (String args) {
Myclass myClass = uus Myclass ();
myClass. B ();
}
}
klass Minu klass {
avalik tühisus A () {
System.out.println (“A”);
}
avalik kehtetu B () {
System.out.prinltn (“B”);
see();
}
}
Klass Myclass sisaldab kahte meetodit. Need on meetodid A ja B. Myclassi objekti loomisel ja meetodi B kasutamisel trükitakse väljundiks B, A. Meetodis B on pärast printimist B selline lause. A (). Seda kasutades kasutati praegust klassi meetodit.
Selle märksõna abil on võimalik kasutada ka praegust klassi konstruktorit. Vaadake antud programmi.
avalik klass ThisDemo {
public staatiline void main (String args) {
A obj = uus A (5);
}
}
klass A {
avalik A () {
System.out.println (“Konstruktor A”);
}
avalik A (int x) {
see ();
System.out.println (“Parameeterdatud konstruktor A”);
}
}
Vastavalt ülaltoodud programmile on A-klassil vaikekonstruktor ja parameetriga konstruktor. A-objekti loomisel kutsutakse parameetriga konstruktorit. Parameetriga konstruktoris on selline lause (); See kutsub praeguse klassi konstruktori, mis on A ().
Mis on Java-s super?
Märksõna 'super' on seotud pärimisega. Pärimine on objektile orienteeritud programmeerimise peamine mõiste. See võimaldab kasutada juba olemasoleva klassi omadusi ja meetodeid uude klassi. Juba olemasolevat klassi tuntakse vanemate klassi või superklassina. Uus klass on tuntud kui lasteklass või alaklass.
"Super" on võrdlusmuutuja, mida kasutatakse otsese vanema klassi objekti tähistamiseks. Ülim märksõna võib viidata vahetusele vanemklassi eksemplari muutujale või käivitada vahetu vanemklassi meetodi. Funktsiooni super () kasutatakse vahetu emaklassi konstruktori kutsumiseks.
Oletame, et on kaks klassi, kuna A ja B. Klass A on superklass ja klass B alaklass. Mõlemal klassil A ja B on kuvamismeetod.
avalik klass A {
avalik tühine kuva () {
System.out.println (“A”);
}
}
avalik klass B ulatub A {
avalik tühine kuva () {
System.out.println (“B”);
}
}
Kui loote B-tüüpi objekti ja helistate meetodi kuvale, annab see väljundi B. A-klassil on kuvamismeetod, kuid alamklassi B kuvamismeetod alistab selle. Kui programmeerija soovib helistada A-klassi kuvamismeetodile, saab ta kasutada super-märksõna. Vaadake antud Java-programmi.
Joonis 02: Java-programm super-märksõna abil
Vastavalt ülaltoodud programmile on klassil A muutuja nimega number väärtusega 10. Klass B ulatub A-ga ja sellel on muutuja nimega number väärtusega 20. Üldiselt peaks B-tüüpi objekti loomisel ja kuvamismeetodi kutsumisel andma selle numbri alaklass, sest uus klass alistab superklassiväärtuse. Kasutades super.num, trükitakse superklassi numbri väärtus.
Super () abil saab helistada superklasside konstruktorile. Vaadake allolevat programmi.
avalik klass Main {
public staatiline void main (String args) {
B obj = uus B ();
}
}
klass A {
A () {
System.out.println (“A”);
}
}
klass B ulatub A {
B () {
Super();
System.out.println (“B”);
}
}
Vastavalt ülaltoodud programmile on A-klassil konstruktor A (). B-klassil on konstruktor B (). Klass B laiendab klassi A. Kui loote B-tüüpi objekti, prindib see väljundiks A, B. Konstruktoril B () on super (). Seetõttu kutsutakse kõigepealt A-konstruktor ja seejärel B-le. Ehkki super () pole kirjutatud, kutsutakse vaikimisi vanemat konstruktorit.
Meetodi kasutav super on järgmine.
Joonis 03: Java-programm, mis kutsub üles superklassimeetodi
Vastavalt ülaltoodud programmile on klassil A kuvamismeetod. B-klassil on ka kuvamismeetod. Klass B ulatub A. Kui loote B-tüüpi objekti ja helistate kuvamismeetodile, saadakse väljund A ja B. Klassis B kuvamismeetodiks nimetatakse klassi A kuvamismeetodit super.display () abil. See meetod prindib kõigepealt tähe “A”. Seejärel prindib “B”.
Milline on selle ja super sarnasus?
Mõlemad on Java programmeerimise märksõnad
Mis vahe on selle ja super vahel?
Erinev artikkel keskel enne tabelit
See vs super |
|
'See' on võrdlusmuutuja, mida kasutatakse praeguse objekti viitamiseks. | "Super" on võrdlusmuutuja, mida kasutatakse otsese superklassiga objekti viitamiseks. |
Eksemplari muutuja | |
Selle abil saab praegusele klassieksemplari muutujale viidata. | Superklassi eksemplari muutujale saab superi abil viidata. |
Klassi meetod | |
Praeguse klassi meetodit saab kasutada selle abil. | Superklassi meetodit saab kasutada superi abil. |
Ehitaja | |
Praeguse klassi konstruktori saab käivitada selle () abil. | Superklassi konstruktorit saab kutsuda super () abil. |
Kokkuvõte - see vs Java Java
Javas kasutatakse märksõnu 'see' ja 'super'. Märksõnu ei saa kasutada muutujate ega muu identifikaatori nimena. Tundub, et nad on ühesugused, kuid neil on erinevus. Selle ja superi erinevus seisneb selles, et super on võrdlusmuutuja, mida kasutatakse otsese superklassi objekti tähistamiseks, samas kui see on võrdlusmuutuja, mis viitab praegusele objektile.
Laadige selle vs super Java fail alla
Selle artikli PDF-versiooni saate alla laadida ja kasutada võrguühenduseta eesmärkidel, nagu tsiteeritud. Laadige PDF-versioon siit alla: Erinevus selle ja Java vahelise super vahel