Ključna razlika - superrazred vs podrazred
U objektno orijentiranom programiranju (OOP) sustav se modelira pomoću objekata. Ti se objekti kreiraju pomoću klase. Klasa je nacrt ili opis za stvaranje objekta. Stvaranje objekata također je poznato kao instancija objekta. Svaki objekt komunicira s drugim objektima. Program ili softver mogu se razviti pomoću objektno orijentiranog programiranja. Nasljeđivanje je glavni pojam u OOP-u. Poboljšava ponovnu upotrebu koda. Umjesto da program implementira od početka, on omogućuje nasljeđivanje svojstava i metoda već postojeće klase u novu klasu. Pomaže da se program učini lakšim za upravljanje. Superrazred i podrazred dva su pojma koja se odnose na nasljeđivanje. Ovaj članak govori o razlici između superrazreda i podrazreda. Ključna razlika između Superklase i Podrazreda je u tome što je Superklasa postojeća klasa iz koje su izvedene nove klase, dok je Podrazred nova klasa koja nasljeđuje svojstva i metode Superklase.
SADRŽAJ
1. Pregled i ključna razlika
2. Što je superrazred
3. Što je podrazred
4. Sličnosti između superrazreda i podrazreda
5. Usporedna usporedba - Superrazred vs podrazred u tabličnom obliku
6. Sažetak
Što je Superclass?
U nasljeđivanju, postojeća klasa iz koje su izvedene nove klase poznata je kao Superklasa. Također je poznat kao roditeljska klasa ili osnovna klasa.
Postoje različite vrste nasljeđivanja. Ilustrirani su pomoću sljedećih primjera. Razmotrite AB i C kao klase.
Slika 01: Vrste nasljeđivanja
Slika 02: Hibridno nasljeđivanje
Prema gornjim dijagramima, Superklase se razlikuju od svake vrste nasljeđivanja. U nasljeđivanju na jednoj razini, A je superrazred. U višerazinskom nasljeđivanju, A je superrazred za B, a B je superrazred za C. U hijerarhijskom nasljeđivanju A je superrazred i za B i za C. U više nasljedstava i A i B su superrazredi za C.
Hibridno nasljeđivanje kombinacija je višerazinskog i višestrukog nasljeđivanja. U dijagramu s lijeve strane A je superrazred za B, C i B, C su superrazredi za D. U dijagramu s desne strane A je superrazred za B i B, D su superrazredi za C.
Pogledajte donji program napisan na Javi.
Slika 03: Program nasljeđivanja na Javi
Prema gornjem programu, klasa A ima metode sum () i sub (). Klasa B ima metodu multiply (). Klasa B proširuje klasu A. Stoga su svojstva i metode klase A dostupne klasi B. Stoga je klasa A superrazred. Za stvaranje objekta uzima se referentna vrsta klase B. Dakle, objektu su dostupne sve metode kao što su sum (), sub () i multiply (). Ako se za izradu objekta koristi referentni tip Superklase, članovima klase B ne može se pristupiti. npr. A obj = novo B (); Stoga referenca Superclass ne može pozvati metodu multiply () jer ta metoda pripada klasi B.
Što je podrazred?
Prema gornjim dijagramima, podrazredi se razlikuju od svake vrste nasljeđivanja. U pojedinačnom nasljeđivanju, B je podrazred. U višerazinskom nasljeđivanju, B je podrazred A, a C je podrazred B. U hijerarhijskom nasljeđivanju B i C su podrazredi A. U više nasljeđa C je podrazred za A i B.
U hibridnom nasljeđivanju, dijagram s lijeve strane, B i C su potklase A. D je podrazred B i C. U dijagramu s desne strane, B je podrazred za A. C je podrazred B i D.
Prema gore navedenom programu nasljeđivanja, klasa B proširuje klasu A. Stoga su svim svojstvima i metodama klase A dostupne klase B. Klasa B nova je klasa koja nasljeđuje klasu A. Poznata je kao podrazred. Također je poznat kao razred djeteta ili izveden razred. Klasa B ima metodu multiply (), a također može pristupiti metodama sum () i sub () klase A koristeći nasljeđivanje.
U čemu je sličnost između superrazreda i podrazreda?
Obje su povezane sa nasljeđivanjem
Koja je razlika između superrazreda i podrazreda?
Diff Article Sredina prije tablice
Superrazred vs podrazred |
|
Kada se implementira nasljeđivanje, postojeća klasa iz koje su izvedene nove klase je Superklasa. | Kada se implementira nasljeđivanje, klasa koja nasljeđuje svojstva i metode iz Superklase je Podklasa. |
Sinonimi | |
Superklasa je poznata kao osnovna klasa, roditeljska klasa. | Podrazred je poznat kao izvedena klasa, podređena klasa. |
Funkcionalnost | |
Nadrazred ne može koristiti svojstva i metode podrazreda. | Podrazred može koristiti svojstva i metode superrazreda. |
Nasljeđivanje na jednoj razini | |
Postoji jedna Superklasa. | Postoji jedan podrazred. |
Hijerarhijsko nasljeđivanje | |
Postoji jedna Superklasa | Postoji mnogo podrazreda. |
Višestruko nasljeđivanje | |
Postoji mnogo super klasa. | Postoji jedan podrazred. |
Sažetak - Superrazred vs Podrazred
Nasljeđivanje je koncept OOP-a. Omogućuje pristup svojstvima i metodama postojeće klase iz nove klase. Naslijeđena klasa je Superklasa, a izvedena klasa Podklasa. Razlika između Superklase i Podrazreda je u tome što je Superklasa postojeća klasa iz koje su izvedene nove klase, dok je Podrazred nova klasa koja nasljeđuje svojstva i metode Superklase.
Preuzmite PDF Superclass vs Podrazred
Možete preuzeti PDF verziju ovog članka i koristiti je u izvanmrežne svrhe prema napomeni. Ovdje preuzmite PDF verziju Razlika između superrazreda i podrazreda