Belangrijkste verschil - Superklasse versus subklasse
Bij Object Oriented Programming (OOP) wordt het systeem gemodelleerd met behulp van objecten. Deze objecten worden gemaakt met behulp van een klasse. Een klasse is een blauwdruk of een beschrijving om een object te maken. Het maken van objecten wordt ook wel objectinstiatie genoemd. Elk object communiceert met andere objecten. Met behulp van Object Oriented Programming kan een programma of software worden ontwikkeld. Overerving is een belangrijk concept in OOP. Het verbetert de herbruikbaarheid van code. In plaats van een programma vanaf het begin te implementeren, staat het toe eigenschappen en methoden van de reeds bestaande klasse over te nemen naar een nieuwe klasse. Het helpt om het programma beter beheersbaar te maken. Superklasse en subklasse zijn twee termen die verband houden met overerving. Dit artikel bespreekt het verschil tussen superklasse en subklasse. Het belangrijkste verschil tussen de superklasse en de subklasse is dat superklasse de bestaande klasse is waaruit de nieuwe klassen zijn afgeleid, terwijl subklasse de nieuwe klasse is die de eigenschappen en methoden van de superklasse erft.
INHOUD
1. Overzicht en belangrijkste verschil
2. Wat is superklasse
3. Wat is subklasse
4. Overeenkomsten tussen superklasse en subklasse
5. Vergelijking zij aan zij - superklasse versus subklasse in tabelvorm
6. Samenvatting
Wat is superklasse?
In Inheritance staat de bestaande klasse waarvan de nieuwe klassen zijn afgeleid, bekend als de superklasse. Het is ook bekend als de bovenliggende klasse of basisklasse.
Er zijn verschillende soorten overerving. Er worden geïllustreerd met behulp van de volgende voorbeelden. Beschouw AB en C als klassen.
Figuur 01: Overervingstypen
Figuur 02: Hybride overerving
Volgens de bovenstaande diagrammen variëren superklassen van elk overervingstype. Bij overerving op één niveau is A de superklasse. Bij overerving op meerdere niveaus is A de superklasse voor B en is B de superklasse voor C. In hiërarchische overerving is A de superklasse voor zowel B als C. Bij meerdere overervingen zijn zowel A als B de superklasse voor C.
Hybride overerving is een combinatie van meerdere niveaus en meerdere overervingen. In het diagram aan de linkerkant is A de superklasse voor B, C en B, C zijn de superklasse voor D. In het diagram aan de rechterkant is A de superklasse voor B en B, D zijn superklasse voor C.
Raadpleeg het onderstaande programma geschreven in Java.
Figuur 03: Overervingsprogramma in Java
Volgens het bovenstaande programma heeft klasse A de methoden sum () en sub (). Klasse B heeft de methode multiply (). Klasse B breidt klasse A uit. Daarom zijn eigenschappen en methoden van klasse A toegankelijk voor klasse B. Daarom is klasse A de superklasse. Het referentietype van klasse B wordt gebruikt om het object te maken. Dus alle methoden zoals sum (), sub () en multiply () zijn toegankelijk voor het object. Als het referentietype Superklasse wordt gebruikt voor het maken van objecten, kunnen de leden van klasse B niet toegankelijk zijn. bijv. A obj = nieuwe B (); Daarom kan superklasse-verwijzing de methode multiply () niet aanroepen omdat die methode tot klasse B behoort.
Wat is een subklasse?
Volgens de bovenstaande diagrammen variëren subklassen van elk overervingstype. In Single Inheritance is B de subklasse. Bij overerving op meerdere niveaus is B de subklasse van A en is C de subklasse van B. In hiërarchische overerving zijn B en C subklassen van A. Bij meervoudige overervingen is C de subklasse voor A en B.
Bij hybride overerving is het diagram links, B en C zijn subklassen van A. D is de subklasse van B en C. In het diagram rechts is B de subklasse voor A. C is de subklasse van B en D.
Volgens het bovenstaande Overervingsprogramma breidt klasse B klasse A uit. Daarom zijn alle eigenschappen en methoden van klasse A toegankelijk voor klasse B. Klasse B is de nieuwe klasse die erft van klasse A. Het staat bekend als de subklasse. Het is ook bekend als de onderliggende klasse of afgeleide klasse. Klasse B heeft de methode multiply () en heeft ook toegang tot de methoden sum () en sub () van klasse A met behulp van overerving.
Wat is de overeenkomst tussen superklasse en subklasse?
Beide zijn gerelateerd aan overerving
Wat is het verschil tussen superklasse en subklasse?
Diff Artikel Midden voor Tafel
Superklasse versus subklasse |
|
Bij het implementeren van overerving, is de bestaande klasse waarvan de nieuwe klassen zijn afgeleid de superklasse. | Bij het implementeren van overerving is de klasse die de eigenschappen en methoden van de superklasse erft de subklasse. |
Synoniemen | |
Superklasse staat bekend als basisklasse, bovenliggende klasse. | Subklasse staat bekend als afgeleide klasse, kindklasse. |
Functionaliteit | |
Een superklasse kan de eigenschappen en methoden van de subklasse niet gebruiken. | Een subklasse kan de eigenschappen en methoden van de superklasse gebruiken. |
Overerving op één niveau | |
Er is één superklasse. | Er is één subklasse. |
Hiërarchische overerving | |
Er is één superklasse | Er zijn veel subklassen. |
Meerdere overerving | |
Er zijn veel superklassen. | Er is één subklasse. |
Samenvatting - Superklasse versus subklasse
Overerving is een concept van OOP. Het staat het gebruik van eigenschappen en methoden van een bestaande klasse toe waartoe een nieuwe klasse toegang heeft. De overgeërfde klasse is de superklasse en de afgeleide klasse is de subklasse. Het verschil tussen de superklasse en de subklasse is dat superklasse de bestaande klasse is waaruit nieuwe klassen worden afgeleid, terwijl subklasse de nieuwe klasse is die de eigenschappen en methoden van de superklasse erft.
Download de pdf-superklasse versus subklasse
U kunt de PDF-versie van dit artikel downloaden en voor offline doeleinden gebruiken volgens de citatienota. Download hier de pdf-versie. Verschil tussen superklasse en subklasse