Diferenca kryesore – Superclass vs Subclass
Në Programimin e Orientuar në Objekte (OOP), sistemi modelohet duke përdorur objekte. Këto objekte krijohen duke përdorur një klasë. Një klasë është një plan ose një përshkrim për të krijuar një objekt. Krijimi i objektit njihet edhe si instantimi i objektit. Çdo objekt komunikon me objekte të tjera. Një program ose softuer mund të zhvillohet duke përdorur Programimin e Orientuar në Objekt. Trashëgimia është një koncept kryesor në OOP. Ai përmirëson ripërdorimin e kodit. Në vend që të zbatojë një program nga fillimi, ai lejon trashëgimin e vetive dhe metodave të klasës tashmë ekzistuese në një klasë të re. Ndihmon për ta bërë programin më të menaxhueshëm. Superclass dhe Subclass janë dy terma që lidhen me trashëgiminë. Ky artikull diskuton ndryshimin midis Superclass dhe Subclass. Dallimi kryesor midis Superklasës dhe Nënklasës është se Superklasa është klasa ekzistuese nga e cila rrjedhin klasat e reja ndërsa Nënklasa është klasa e re që trashëgon vetitë dhe metodat e Superklasës.
Çfarë është Superclass?
Në trashëgimi, klasa ekzistuese nga e cila rrjedhin klasat e reja njihet si Superklasa. Njihet gjithashtu si klasa mëmë ose klasa bazë.
Ka lloje të ndryshme trashëgimie. Janë ilustruar duke përdorur shembujt e mëposhtëm. Konsideroni A B dhe C si klasa.
Figura 01: Llojet e trashëgimisë
Figura 02: Trashëgimia hibride
Sipas diagrameve të mësipërme, Superklasat ndryshojnë nga çdo lloj trashëgimie. Në trashëgiminë e një niveli, A është Superklasa. Në trashëgiminë me shumë nivele, A është superklasa për B dhe B është superklasa për C. Në trashëgiminë hierarkike A është superklasa si për B ashtu edhe për C. Në trashëgimitë e shumëfishta, të dyja A dhe B janë superklasa për C.
Trashëgimia hibride është një kombinim i trashëgimive me shumë nivele dhe të shumëfishta. Në diagramin në anën e majtë, A është superklasa për B, C dhe B, C janë superklasa për D. Në diagramin në anën e djathtë, A është superklasa për B dhe B, D janë superklasa për C.
Referojuni programit të mëposhtëm të shkruar në Java.
Figura 03: Programi i trashëgimisë në Java
Sipas programit të mësipërm, klasa A ka metoda sum() dhe sub(). Klasa B ka metodën multiply(). Klasa B po zgjeron klasën A. Prandaj, vetitë dhe metodat e klasës A janë të aksesueshme nga klasa B. Prandaj, klasa A është Superklasa. Lloji referues i klasës B merret për të krijuar objektin. Pra, të gjitha metodat si sum(), sub() dhe multiply() janë të aksesueshme nga objekti. Nëse lloji i referencës Superclass përdoret për krijimin e objektit, anëtarët e klasës B nuk mund të jenë të aksesueshëm. p.sh. A obj=new B(); Prandaj, referenca Superclass nuk mund të thërrasë metodën multiply() sepse kjo metodë i përket klasës B.
Çfarë është nënklasa?
Sipas diagrameve të mësipërme, nënklasat ndryshojnë nga çdo lloj trashëgimie. Në trashëgiminë e vetme, B është nënklasa. Në trashëgiminë me shumë nivele, B është nënklasa e A dhe C është nënklasa e B. Në trashëgiminë hierarkike B dhe C janë nënklasa të A. Në trashëgimi të shumëfishta, C është nënklasa për A dhe B.
Në trashëgiminë hibride, diagrami në të majtë, B dhe C janë nënklasa të A. D është nënklasa e B dhe C. Në diagramin në të djathtë, B është nënklasa për A. C është nënklasa e B dhe D.
Sipas programit të mësipërm të trashëgimisë, klasa B po zgjeron klasën A. Prandaj, të gjitha vetitë dhe metodat e klasës A janë të aksesueshme nga klasa B. Klasa B është klasa e re që trashëgon nga klasa A. Ajo njihet si nënklasa. Njihet gjithashtu si klasa e fëmijëve ose klasa e prejardhur. Klasa B ka metodën e shumëzimit () dhe gjithashtu mund të aksesojë metodat sum() dhe sub() të klasës A duke përdorur trashëgiminë.
Cila është ngjashmëria midis superklasës dhe nënklasës?
Të dyja janë të lidhura me trashëgiminë
Cili është ndryshimi midis Superklasës dhe Nënklasës?
Superklasa vs Nënklasa |
|
Kur zbatohet trashëgimia, klasa ekzistuese nga e cila rrjedhin klasat e reja është Superklasa. | Kur zbatohet trashëgimia, klasa që trashëgon vetitë dhe metodat nga Superklasa është Nënklasa. |
Sinonime | |
Superklasa njihet si klasa bazë, klasa prind. | Nënklasa njihet si klasa e prejardhur, klasa fëmijë. |
Funksionalitet | |
Një superklasë nuk mund të përdorë vetitë dhe metodat e nënklasës. | Një nënklasë mund të përdorë vetitë dhe metodat e Superklasës. |
Trashëgimi me një nivel | |
Ka një superklasë. | Ekziston një nënklasë. |
Trashëgimia hierarkike | |
Ka një superklasë | Ka shumë nënklasa. |
Trashëgimi e shumëfishtë | |
Ka shumë superklasa. | Ekziston një nënklasë. |
Përmbledhje – Superklasa vs Nënklasa
Trashëgimia është një koncept i OOP. Ai lejon përdorimin e vetive dhe metodave të një klase ekzistuese për t'u aksesuar nga një klasë e re. Klasa e trashëguar është Superklasa, dhe klasa e prejardhur është Nënklasa. Dallimi midis Superklasës dhe Nënklasës është se Superklasa është klasa ekzistuese nga e cila rrjedhin klasa të reja ndërsa Nënklasa është klasa e re që trashëgon vetitë dhe metodat e Superklasës.
Shkarko PDF Superclass vs Subclass
Mund të shkarkoni versionin PDF të këtij artikulli dhe ta përdorni për qëllime jashtë linje sipas shënimit të citimit. Ju lutemi shkarkoni versionin PDF këtu Dallimi midis Superklasës dhe Nënklasës