Differenza chiave - Superclass vs Sottoclasse
Nella programmazione orientata agli oggetti (OOP), il sistema viene modellato utilizzando oggetti. Questi oggetti vengono creati utilizzando una classe. Una classe è un progetto o una descrizione per creare un oggetto. La creazione di oggetti è anche nota come istanziazione di oggetti. Ogni oggetto sta comunicando con altri oggetti. Un programma o un software può essere sviluppato utilizzando la programmazione orientata agli oggetti. L'ereditarietà è un concetto importante in OOP. Migliora la riusabilità del codice. Piuttosto che implementare un programma dall'inizio, consente di ereditare proprietà e metodi della classe già esistente in una nuova classe. Aiuta a rendere il programma più gestibile. Superclasse e Sottoclasse sono due termini correlati all'ereditarietà. Questo articolo discute la differenza tra Superclass e Sottoclasse. La differenza fondamentale tra Superclass e Subclass è che Superclass è la classe esistente da cui derivano le nuove classi mentre Subclass è la nuova classe che eredita le proprietà ei metodi della Superclass.
CONTENUTI
1. Panoramica e differenza chiave
2. Cos'è la superclasse
3. Cos'è la sottoclasse
4. Somiglianze tra superclasse e sottoclasse
5. Confronto affiancato - Superclasse vs sottoclasse in forma tabulare
6. Riepilogo
Cos'è la Superclass?
In Inheritance, la classe esistente da cui derivano le nuove classi è nota come Superclass. È anche noto come classe genitore o classe base.
Esistono diversi tipi di ereditarietà. Sono illustrati utilizzando i seguenti esempi. Considera AB e C come classi.
Figura 01: tipi di ereditarietà
Figura 02: ereditarietà ibrida
Secondo i diagrammi sopra, le superclassi variano da ogni tipo di ereditarietà. Nell'ereditarietà a livello singolo, A è la Superclasse. Nell'ereditarietà multilivello, A è la Superclasse per B e B è la Superclasse per C. In Ereditarietà gerarchica A è la Superclasse sia per B che C. Nelle eredità multiple sia A che B sono Superclasse per C.
L'ereditarietà ibrida è una combinazione di eredità multilivello e multiple. Nel diagramma a sinistra, A è la Superclasse per B, C e B, C sono le Superclassi per D. Nel diagramma a destra, A è la Superclasse per B e B, D sono le Superclassi per C.
Fare riferimento al seguente programma scritto in Java.
Figura 03: programma di ereditarietà in Java
Secondo il programma sopra, la classe A ha i metodi sum () e sub (). La classe B ha il metodo multiply (). La classe B sta estendendo la classe A. Pertanto, le proprietà ei metodi della classe A sono accessibili dalla classe B. Pertanto, la classe A è la Superclasse. Il tipo di riferimento della classe B viene utilizzato per creare l'oggetto. Quindi, tutti i metodi come sum (), sub () e multiply () sono accessibili dall'oggetto. Se il tipo di riferimento Superclass viene utilizzato per la creazione di oggetti, i membri della classe B non possono essere accessibili. ad esempio A obj = new B (); Pertanto, il riferimento alla superclasse non può chiamare il metodo multiply () perché quel metodo appartiene alla classe B.
Cos'è la sottoclasse?
Secondo i diagrammi precedenti, le sottoclassi variano da ogni tipo di ereditarietà. In Single Inheritance, B è la sottoclasse. Nell'ereditarietà multi-livello, B è la sottoclasse di A e C è la sottoclasse di B. Nell'ereditarietà gerarchica B e C sono sottoclassi di A. Nelle eredità multiple, C è la sottoclasse per A e B.
Nell'ereditarietà ibrida, il diagramma a sinistra, B e C sono le sottoclassi di A. D è la sottoclasse di B e C. Nel diagramma a destra, B è la sottoclasse di A. C è la sottoclasse di B e D.
Secondo il programma di ereditarietà di cui sopra, la classe B estende la classe A. Pertanto, tutte le proprietà e i metodi della classe A sono accessibili dalla classe B. La classe B è la nuova classe che eredita dalla classe A. È nota come sottoclasse. È anche noto come classe figlio o classe derivata. La classe B ha il metodo multiply () e può anche accedere ai metodi sum () e sub () della classe A usando l'ereditarietà.
Qual è la somiglianza tra superclasse e sottoclasse?
Entrambi sono correlati all'eredità
Qual è la differenza tra Superclass e Sottoclasse?
Articolo diff. Al centro prima della tabella
Superclasse vs Sottoclasse |
|
Quando si implementa l'ereditarietà, la classe esistente da cui derivano le nuove classi è la Superclasse. | Quando si implementa l'ereditarietà, la classe che eredita le proprietà ei metodi dalla Superclasse è la Sottoclasse. |
Sinonimi | |
La superclasse è nota come classe base, classe genitore. | La sottoclasse è nota come classe derivata, classe figlia. |
Funzionalità | |
Una superclasse non può utilizzare le proprietà e i metodi della sottoclasse. | Una sottoclasse può utilizzare le proprietà e i metodi della Superclasse. |
Ereditarietà a livello singolo | |
C'è una Superclass. | C'è una sottoclasse. |
Ereditarietà gerarchica | |
C'è una Superclass | Esistono molte sottoclassi. |
Ereditarietà multipla | |
Ci sono molte Superclassi. | C'è una sottoclasse. |
Riepilogo - Superclasse vs Sottoclasse
L'ereditarietà è un concetto di OOP. Consente di utilizzare proprietà e metodi di una classe esistente a cui può accedere una nuova classe. La classe ereditata è la Superclasse e la classe derivata è la sottoclasse. La differenza tra Superclass e Subclass è che Superclass è la classe esistente da cui derivano nuove classi mentre Subclass è la nuova classe che eredita le proprietà ei metodi della Superclass.
Scarica il PDF Superclass vs Sottoclasse
È possibile scaricare la versione PDF di questo articolo e utilizzarla per scopi offline come da nota di citazione. Si prega di scaricare la versione PDF qui Differenza tra Superclass e Sottoclasse