Key Difference - ez a szuper a Java-ban
A Java programozásban az „ez” és a „szuper” kulcsszavakat használják. Ezek a kulcsszavak nem használhatók változóként vagy más azonosító névként. A Java támogatja az objektumorientált programozást (OOP). A program vagy a szoftver objektumok segítségével modellezhető. Az objektumok telhetetlenek az osztályok használatával. Az OOP egyik pillére az öröklés. Biztosítja a kód újrafelhasználhatóságát. A már létező osztályok szuperosztályok, a származtatott osztályok pedig alosztályok. A szuper kulcsszó a szuperosztály egyik objektumára hivatkozhat. Több objektum van a rendszerben. A 'this' kulcsszó az aktuális objektum hivatkozására szolgál. A legfontosabb különbség ennek és a szuper között az, hogy „ez” egy referencia változó, amelyet az aktuális objektum hivatkozására használnak, míg a „super” olyan referencia változó, amelyet az azonnali szuperkategóriás objektumra hivatkoznak.
TARTALOM
1. Áttekintés és kulcsfontosságú különbségek
2. Mi ez a Java-ban
3. Mi a szuper a Java-ban?
4. Hasonlóságok a Java és a super között?
5. Egymás melletti összehasonlítás - ez a szuper a Java-ban táblázatos formában
6. Összefoglalás
Mi ez a Java-ban?
Az "ez" kulcsszó az aktuális objektumra utal. Hivatkozzon a megadott Java programra.
01. ábra: Java program ezt a kulcsszót használva
A Java-ban háromféle változó létezik. Ezek példányváltozók, helyi változók és osztályváltozók. A fenti program szerint az Employee osztálynak két példányváltozója van. Ők azonosító és név. A lokális változók azok, amelyek a módszerekhez tartoznak. Az osztályváltozókat minden objektum megosztja. Az azonosító és a név átkerül az Employee konstruktorhoz. Ha a programozó id = id; nem inicializálja a példányváltozókat, mert a Konstruktor már rendelkezik azonosítóval és névvel. Nincsenek értékek például a változókra. Tehát, ha kinyomtatja őket, akkor null jelenik meg. Ennek használatakor az aktuális objektumra utal. Ezért az azonosító és a név megadása a konstruktor számára beállíthatja a példányváltozókat.
Az 'this' kulcsszó felhasználható az aktuális osztály-módszer meghívására. Lásd az adott java programot.
public class ThisDemo {
public static void main (String érvel) {
Saját osztály myClass = új Saját osztály ();
myClass. B ();
}
}
osztály Saját osztály {
public void A () {
System.out.println („A”);
}
public void B () {
System.out.prinltn („B”);
ez egy();
}
}
A Saját osztály osztály két módszert tartalmaz. Ezek A és B módszerek. A Myclass objektum létrehozásakor és a B módszer meghívásakor B, A nyomtatásra kerül a kimenet. A B módszerben a B nyomtatása után van egy ilyen utasítás. Ennek felhasználásával hívták meg a jelenlegi osztály metódust.
Ez a kulcsszó felhasználható az aktuális osztály konstruktor meghívására is. Hivatkozzon az adott programra.
public class ThisDemo {
public static void main (String érvel) {
A obj = új A (5);
}
}
A osztály{
nyilvános A () {
System.out.println („A konstruktor”);
}
nyilvános A (int x) {
ez();
System.out.println („Paraméterezett konstruktor A”);
}
}
A fenti program szerint az A osztály rendelkezik egy alapértelmezett konstruktorral és egy paraméterezett konstruktorral. A objektum létrehozásakor a paraméterezett konstruktort hívják meg. A paraméterezett konstruktorban van egy ilyen utasítás (); Meghívja a jelenlegi osztály konstruktort, amely A ().
Mi a szuper a Java-ban?
A „szuper” kulcsszó az öröklődéshez kapcsolódik. Az öröklés az objektumorientált programozás egyik fő fogalma. Lehetővé teszi a már meglévő osztály tulajdonságainak és módszereinek egy új osztályba történő felhasználását. A már létező osztály szülőosztály vagy szuperosztály néven ismert. Az új osztály gyermekosztály vagy alosztály néven ismert.
A 'super' egy referencia változó, amely a közvetlen szülő osztály objektumra vonatkozik. A szuper kulcsszó hivatkozhat azonnali szülő osztály példány változóra, vagy meghívhatja az azonnali szülő osztály metódust. A super () azonnali szülő osztály konstruktor meghívására szolgál.
Tegyük fel, hogy két osztály létezik, mivel A és B. Az A osztály a szuperosztály, a B osztály pedig az alosztály. Az A, B osztály egyaránt rendelkezik megjelenítési módszerrel.
nyilvános A osztály {
public void display () {
System.out.println („A”);
}
}
a B nyilvános osztály meghosszabbítja az A {
public void display () {
System.out.println („B”);
}
}
B típusú objektum létrehozásakor és a metódus megjelenítésének meghívásakor megkapja a B kimenetet. Az A osztály rendelkezik a megjelenítési módszerrel, de a B alosztály megjelenítési módja felülírja. Ha a programozó meg akarja hívni a megjelenítési módszert az A osztályban, akkor használhatja a szuper kulcsszót. Hivatkozzon a megadott Java programra.
02. ábra: Java program szuper kulcsszóval
A fenti program szerint az A osztálynak van egy változó nevű változója, amelynek értéke 10. A B osztály kiterjeszti az A-t, és van egy változó neve, amelynek értéke 20. Általában B típusú objektum létrehozásakor és a megjelenítési módszer meghívásakor meg kell adnia a számot az alosztály, mert a szuperosztály értékét felülírja az új osztály. A super.num használatával a szuperosztály számának értéke kinyomtatásra kerül.
A super () segítségével meghívható a szuperosztály konstruktor. Olvassa el az alábbi programot.
nyilvános osztály Fő {
public static void main (String érvel) {
B obj = új B ();
}
}
A osztály{
A () {
System.out.println („A”);
}
}
a B osztály kiterjeszti az A {
B () {
szuper();
System.out.println („B”);
}
}
A fenti program szerint az A osztálynak van egy A () konstruktora. A B osztályban van a B () konstruktor. A B osztály kiterjeszti az A osztályt. B típusú objektum létrehozásakor A, B nyomtatja ki kimenetként. A B () konstruktor szuper (). Ezért először az A konstruktort hívják meg, majd B-hez mennek. Bár a super () nincs megírva, alapértelmezés szerint a szülő konstruktort hívják meg.
A módszert használó szuper a következő.
03. ábra: Java program, amely meghívja a szuperosztályos módszert
A fenti program szerint az A osztály rendelkezik megjelenítési módszerrel. A B osztálynak van megjelenítési módja is. A B osztály kiterjeszti az A. Ha B típusú objektumot hoz létre, és a megjelenítési módszer meghívása A és B formátumú kimenetet eredményez. A B osztályú megjelenítési módban az A osztályú megjelenítési módot hívják meg a super.display () használatával. Ez a módszer először „A” -t nyomtat. Ezután kinyomtatja a „B” betűt.
Mi a hasonlóság ez és a szuper között?
Mindkettő kulcsszó a Java programozásban
Mi a különbség ez és a szuper között?
Különböző cikk a táblázat előtt
Ez vs Szuper |
|
Az 'this' egy referencia változó, amely az aktuális objektum hivatkozására szolgál. | A „szuper” egy referencia változó, amelyet azonnali szuperosztályú objektumok hivatkozására használnak. |
Példányváltozó | |
Ezzel egy aktuális osztálypéldány-változó hivatkozható. | A szuperosztályú példányváltozó a super segítségével hivatkozható. |
Osztály módszer | |
Az aktuális osztály metódust ennek segítségével lehet meghívni. | A szuperklasszis módszer meghívható a super használatával. |
Konstruktőr | |
Az aktuális osztály konstruktort ennek () használatával lehet meghívni. | A szuperosztályos konstruktort a super () segítségével lehet meghívni. |
Összegzés - ez vs szuper Java-ban
Az „ez” és a „szuper” kulcsszavakat a Java-ban használják. A kulcsszavak nem használhatók változóként vagy más azonosító névként. Úgy tűnik, hogy ugyanazok, de van különbségük. A különbség a szuper között az, hogy a szuper egy referencia változó, amelyet az azonnali szuperosztályú objektumra utalnak, míg ez az aktuális objektumra utaló referencia változó.
Töltse le ennek a vs szupernek a PDF-jét Java-ban
A cikk PDF-verzióját letöltheti, és offline célokra is használhatja, az idézési megjegyzés szerint. Kérjük, töltse le a PDF verziót innen: Különbség a Java és a super között