Verschil tussen superklasse en subklasse

Belangrijkste verschil - Superklasse vs Subklasse
 

In 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 staat ook bekend als object-instantiatie. Elk object communiceert met andere objecten. Een programma of software kan worden ontwikkeld met behulp van Object Oriented Programming. In erfenis is een belangrijk concept in OOP. Het verbetert de code-herbruikbaarheid. In plaats van een programma vanaf het begin te implementeren, kunnen er eigenschappen en methoden van de reeds bestaande klasse worden overgenomen in een nieuwe klasse. Het helpt om het programma beter beheersbaar te maken. Superklasse en Subklasse zijn twee termen die gerelateerd zijn aan overerving. Dit artikel bespreekt het verschil tussen superklasse en subklasse. De belangrijk verschil tussen de superklasse en subklasse is dat Superclass is de bestaande klasse waaruit de nieuwe klassen zijn afgeleid, terwijl Subklasse de nieuwe klasse is die de eigenschappen en methoden van de superklasse overneemt.

INHOUD

1. Overzicht en belangrijkste verschil
2. Wat is Superclass
3. Wat is subklasse
4. Overeenkomsten tussen superklasse en subklasse
5. Vergelijking zij aan zij - superklasse versus subklasse in tabelvorm
6. Samenvatting

Wat is Superclass?

In Inheritance wordt de bestaande klasse waarvan de nieuwe klassen zijn afgeleid, de Superklasse genoemd. Het is ook bekend als de bovenliggende klasse of basisklasse.

Er zijn verschillende typen overerving. Er worden geïllustreerd aan de hand van de volgende voorbeelden. Beschouw A B en C als klassen.

Figuur 01: Overervingstypen

Figuur 02: Hybride overerving

Volgens de bovenstaande diagrammen varieert Superclasses van elk type overerving. Bij overerving op één niveau is A de superklasse. In multilevel-overerving is A de superklasse voor B en B is de superklasse voor C. In hiërarchische overerving A is de superklasse voor zowel B als C. In meerdere erfenissen zijn zowel A als B superklassen voor C.

Hybrid inheritance is een combinatie van multi-level en multiple inheritances. In het diagram aan de linkerkant is A de superklasse voor B, C en B, C zijn de superklassen voor D. In het diagram aan de rechterkant is A de superklasse voor B en B, D zijn superklassen voor C.

 Raadpleeg het onderstaande programma geschreven in Java.

Figuur 03: Overnameprogramma in Java

Volgens het bovenstaande programma heeft klasse A de methoden sum () en sub (). Klasse B heeft de methode multiply (). Klasse B verlengt klasse A. 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. Alle methoden zoals sum (), sub () en multiply () zijn dus toegankelijk voor het object. Als het referentietype Superclass wordt gebruikt voor het maken van objecten, kunnen de leden van klasse B niet toegankelijk zijn. bijv. Een obj = nieuwe B (); Daarom kan Superclass-verwijzing de methode multiply () niet aanroepen omdat die methode tot klasse B behoort.

Wat is subklasse?

Volgens de bovenstaande diagrammen varieert de subklasse van elk type overerving. In Single Inheritance is B de subklasse. Bij overerving op meerdere niveaus is B de subklasse van A en C is de subklasse van B. In hiërarchische overerving B en C zijn subklassen van A. In meerdere erfenissen is C de subklasse voor A en B.

In Hybrid inheritance zijn het diagram links, B en C subklassen van A. D is de subklasse van B en C. In het diagram aan de rechterkant is B de subklasse voor A. C is de subklasse van B en D.

Volgens het bovengenoemde overnameprogramma 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. Dit is de subklasse. Het is ook bekend als de kindklasse 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 gelijkenis tussen superklasse en subklasse?

  • Beide zijn gerelateerd aan Inheritance.

Wat is het verschil tussen superklasse en subklasse?

Superklasse versus subklasse

Bij het implementeren van overerving is de bestaande klasse waaruit de nieuwe klassen zijn afgeleid de Superklasse. Bij het implementeren van overerving is de klasse die de eigenschappen en methoden van de superklasse overneemt de subklasse.
 Synoniemen
Superclass staat bekend als basisklasse, ouderklasse. 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.
 Single-Level-Inheritance
Er is één superklasse. Er is één subklasse.
Hiërarchische overerving
Er is één superklasse Er zijn veel subklassen.
multiple Inheritance
Er zijn veel superklassen. Er is één subklasse.

Samenvatting - Superklasse vs Subklasse 

Overerving is een concept van OOP. Hiermee kunnen eigenschappen en methoden van een bestaande klasse worden gebruikt door een nieuwe klasse. De overgenomen klasse is de superklasse en de afgeleide klasse is de subklasse. Het verschil tussen de superklasse en 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 overneemt.

Download de PDF Superclass vs Subclass

U kunt de PDF-versie van dit artikel downloaden en gebruiken voor offline doeleinden, zoals per citaatnotitie. Download hier de PDF-versie. Verschil tussen superklasse en subklasse

Referentie:

1. "Overerving in Java - Javatpoint." Het punt, Beschikbaar Hier 
2.tutorialspoint.com. "Java Inheritance." Het punt, Beschikbaar Hier