Diferența cheie – Superclasă vs Subclasă
În programarea orientată pe obiecte (OOP), sistemul este modelat folosind obiecte. Aceste obiecte sunt create folosind o clasă. O clasă este un plan sau o descriere pentru a crea un obiect. Crearea obiectelor este cunoscută și sub denumirea de instanțiere a obiectelor. Fiecare obiect comunică cu alte obiecte. Un program sau software poate fi dezvoltat folosind programarea orientată pe obiecte. Moștenirea este un concept major în POO. Îmbunătățește reutilizarea codului. În loc să implementeze un program de la început, acesta permite moștenirea proprietăților și metodelor clasei deja existente într-o clasă nouă. Ajută la a face programul mai ușor de gestionat. Superclasa și Subclasa sunt doi termeni care au legătură cu moștenirea. Acest articol discută diferența dintre Superclasă și Subclasă. Diferența cheie dintre Superclasă și Subclasă este că Superclass este clasa existentă din care sunt derivate noile clase, în timp ce Subclass este noua clasă care moștenește proprietățile și metodele Superclasei.
Ce este Superclass?
În Moștenire, clasa existentă din care sunt derivate noile clase este cunoscută ca Superclasa. Este cunoscută și sub denumirea de clasa părinte sau clasa de bază.
Există diferite tipuri de moștenire. Sunt ilustrate folosind următoarele exemple. Considerați A B și C ca clase.
Figura 01: Tipuri de moștenire
Figura 02: Moștenirea hibridă
Conform diagramelor de mai sus, superclasele variază de la fiecare tip de moștenire. În moștenirea cu un singur nivel, A este Superclasa. În moștenirea pe mai multe niveluri, A este superclasa pentru B și B este superclasa pentru C. În moștenirea ierarhică A este superclasa atât pentru B, cât și pentru C. În moștenirile multiple, atât A cât și B sunt superclase pentru C.
Moștenirea hibridă este o combinație de moșteniri pe mai multe niveluri și mai multe. În diagrama din partea stângă, A este Superclasa pentru B, C și B, C sunt Superclasele pentru D. În diagrama din partea dreaptă, A este Superclasa pentru B și B, D sunt Superclasele pentru C.
Consultați programul de mai jos scris în Java.
Figura 03: Programul de moștenire în Java
Conform programului de mai sus, clasa A are metode sum() și sub(). Clasa B are metoda multiplicare (). Clasa B extinde clasa A. Prin urmare, proprietățile și metodele clasei A sunt accesibile de clasa B. Prin urmare, clasa A este Superclasa. Tipul de referință al clasei B este luat pentru a crea obiectul. Deci, toate metodele precum sum(), sub() și multiplicly() sunt accesibile de către obiect. Dacă tipul de referință Superclass este utilizat pentru crearea obiectelor, membrii clasei B nu pot fi accesibili. de exemplu. A obj=nou B(); Prin urmare, referința la Superclasă nu poate apela metoda multiplicly() deoarece acea metodă aparține clasei B.
Ce este subclasa?
Conform diagramelor de mai sus, subclasele variază de la fiecare tip de moștenire. În moștenirea unică, B este subclasa. În moștenirea pe mai multe niveluri, B este subclasa lui A și C este subclasa lui B. În moștenirea ierarhică B și C sunt subclase ale lui A. În moștenirile multiple, C este subclasa pentru A și B.
În moștenirea hibridă, diagrama din stânga, B și C sunt subclase ale lui A. D este subclasa lui B și C. În diagrama din dreapta, B este subclasa pentru A. C este subclasa din B și D.
Conform programului de moștenire de mai sus, clasa B extinde clasa A. Prin urmare, toate proprietățile și metodele clasei A sunt accesibile de către clasa B. Clasa B este noua clasă care moștenește din clasa A. Este cunoscută ca subclasa. Este, de asemenea, cunoscut sub numele de clasă copil sau clasă derivată. Clasa B are metoda înmulțirii () și poate accesa și metodele sum() și sub() din clasa A folosind moștenirea.
Care este asemănarea dintre superclasă și subclasă?
Ambele sunt legate de moștenire
Care este diferența dintre superclasă și subclasă?
Superclasă vs Subclasa |
|
La implementarea moștenirii, clasa existentă din care sunt derivate noile clase este Superclasa. | La implementarea moștenirii, clasa care moștenește proprietățile și metodele din Superclasă este Subclasa. |
Sinonime | |
Superclasa este cunoscută ca clasă de bază, clasă părinte. | Subclasa este cunoscută ca clasă derivată, clasă copil. |
Funcționalitate | |
O superclasă nu poate folosi proprietățile și metodele subclasei. | O subclasă poate folosi proprietățile și metodele superclasei. |
Moștenire pe un singur nivel | |
Există o superclasă. | Există o subclasă. |
Moștenire ierarhică | |
Există o superclasă | Există multe subclase. |
Moștenire multiplă | |
Există multe superclase. | Există o subclasă. |
Rezumat – Superclasă vs Subclasa
Moștenirea este un concept de POO. Permite folosirea proprietăților și metodelor unei clase existente pentru a fi accesate de o nouă clasă. Clasa moștenită este Superclasa, iar clasa derivată este Subclasa. Diferența dintre Superclasă și Subclasă este că Superclass este clasa existentă din care sunt derivate noile clase, în timp ce Subclass este noua clasă care moștenește proprietățile și metodele Superclasei.
Descărcați PDF Superclass vs Subclass
Puteți descărca versiunea PDF a acestui articol și o puteți utiliza în scopuri offline, conform nota de citare. Vă rugăm să descărcați versiunea PDF aici Diferența dintre superclasă și subclasă