I Objektorienteret programmering (OOP) modelleres systemet ved hjælp af objekter. Disse objekter oprettes ved hjælp af en klasse. En klasse er en plan eller en beskrivelse for at oprette et objekt. Objektoprettelse er også kendt som objektinjustering. Hvert objekt kommunikerer med andre objekter. Et program eller software kan udvikles ved hjælp af objektorienteret programmering. Arv er et vigtigt koncept i OOP. Det forbedrer genanvendelse af kode. I stedet for at implementere et program fra starten, tillader det at arve egenskaber og metoder i den allerede eksisterende klasse til en ny klasse. Det hjælper med at gøre programmet mere håndterbart. Superklasse og underklasse er to udtryk, der er relateret til arv. Denne artikel diskuterer forskellen mellem Superklasse og Underklasse. Det vigtigste forskel mellem Superklassen og Underklassen er det Superklasse er den eksisterende klasse, hvorfra de nye klasser er afledt, mens underklasse er den nye klasse, der arver egenskaberne og metoderne i Superklassen.
1. Oversigt og nøgleforskel
2. Hvad er Superclass
3. Hvad er underklasse
4. Ligheder mellem superklasse og underklasse
5. Sammenligning side ved side - Superklasse vs underklasse i tabelform
6. Resume
I arv kendes den eksisterende klasse, hvorfra de nye klasser er afledt, Superklassen. Det er også kendt som forældreklasse eller baseklasse.
Der er forskellige arvstyper. Der illustreres ved hjælp af de følgende eksempler. Overvej A B og C som klasser.
Figur 01: Arvstyper
Figur 02: Hybridarv
I henhold til ovenstående diagrammer varierer Superklasser fra hver arvtype. I arv på enkelt niveau er A Superklassen. I arv i flere niveauer er A superklassen for B og B er superklassen for C. I hierarkisk arv er A superklassen for både B og C. I flere arv er både A og B superklasser for C.
Hybridarv er en kombination af flere niveauer og flere arver. I diagrammet til venstre er A Superklassen for B, C og B, C er Superklasserne for D. I diagrammet til højre er A Superklassen for B og B, D er Superklasser for C.
Se nedenstående program skrevet i Java.
Figur 03: Arveprogram i Java
I henhold til ovenstående program har klasse A sum () og sub () metoder. Klasse B har metode til multiplikation (). Klasse B udvider klasse A. Derfor er egenskaber og metoder i klasse A tilgængelige for klasse B. Derfor er klasse A Superklassen. Henvisningstypen til klasse B tages for at oprette objektet. Så alle metoder såsom sum (), sub () og multiplicer () er tilgængelige af objektet. Hvis Superclass-referencetype bruges til objektskabelse, kan medlemmerne af klasse B ikke være tilgængelige. f.eks. En obj = ny B (); Superclass-reference kan derfor ikke kalde metodemultiplikationen (), fordi denne metode hører til klasse B.
I henhold til ovenstående diagrammer varierer underklasser fra hver arvtype. I enkelt arv er B underklasse. I arven på flere niveauer er B underklasse for A og C er underklasse af B. I hierarkisk arv er B og C underklasser af A. I flere arv er C underklasse for A og B.
I hybridarv er diagrammet til venstre, B og C underklasser af A. D er underklassen til B og C. I diagrammet til højre er B underklassen for A. C er underklassen til B og D.
I henhold til ovennævnte arveprogram udvider klasse B klasse A. Derfor er alle egenskaber og metoder i klasse A tilgængelige for klasse B. Klasse B er den nye klasse, der arver fra klasse A. Det er kendt som underklasse. Det er også kendt som barneklassen eller den afledte klasse. Klasse B har metode til multiplikation (), og den kan også få adgang til sum () og sub () metoder i klasse A ved hjælp af arv.
Superklasse vs underklasse | |
Ved implementering af arv er den eksisterende klasse, hvorfra de nye klasser er afledt, Superklassen. | Ved implementering af arv er klassen, der arver egenskaberne og metoderne fra Superklassen, underklassen. |
Synonymer | |
Superklasse er kendt som baseklasse, forældreklasse. | Underklasse er kendt som afledt klasse, barneklasse. |
Funktionalitet | |
En superklasse kan ikke bruge egenskaberne og metoderne for underklassen. | En underklasse kan bruge egenskaberne og metoderne for Superklassen. |
Single-Level-Inheritance | |
Der er en Superklasse. | Der er en underklasse. |
Hierarkisk arv | |
Der er en Superklasse | Der er mange underklasser. |
multipel nedarvning | |
Der er mange superklasser. | Der er en underklasse. |
Arv er et koncept med OOP. Det giver mulighed for at bruge egenskaber og metoder i en eksisterende klasse for at få adgang til en ny klasse. Den arvede klasse er Superklassen, og den afledte klasse er Underklassen. Forskellen mellem Superklassen og Underklassen er, at Superklassen er den eksisterende klasse, hvorfra nye klasser er afledt, mens Underklassen er den nye klasse, der arver egenskaberne og metoderne i Superklassen.
Du kan downloade PDF-version af denne artikel og bruge den til offline-formål som pr. Citatnotat. Download PDF-version her Forskel mellem Superklasse og Underklasse
1. “Arv i Java - Javatpoint.” Punktet, tilgængeligt her
2.tutorialspoint.com. “Java-arv.” Punktet, tilgængeligt her