Sommario:
Definizione - Cosa significa ereditarietà multipla?
L'ereditarietà multipla è una caratteristica di alcuni linguaggi di programmazione orientati agli oggetti in cui una classe o un oggetto eredita caratteristiche e proprietà da più di una classe o oggetto padre. Ciò è contrario alla singola proprietà ereditaria, che consente a un oggetto o una classe di ereditare da un oggetto o una classe specifici. Sebbene vi siano alcuni vantaggi associati all'ereditarietà multipla, aumenta l'ambiguità e la complessità quando non sono progettati o implementati correttamente.
Techopedia spiega l'ereditarietà multipla
A differenza della singola eredità, l'ereditarietà multipla ha una fusione simmetrica e un'estensione asimmetrica dal punto di vista dell'ereditarietà. Quando le caratteristiche di un insieme non dipendono dalle caratteristiche dell'altro insieme, è probabile che l'ereditarietà multipla sia più vantaggiosa. In altre parole, l'ereditarietà multipla è più utile quando è possibile la separazione delle caratteristiche degli oggetti in insiemi ortogonali. L'ereditarietà multipla è utile nel caso di un modello di adattatore. Consente di adattare un'interfaccia a un'altra. Un altro vantaggio dell'ereditarietà multipla è associato al modello di osservatore. In questo modello, le chiamate possono tenere un elenco di funzioni / osservatori che possono essere notificati da qualche modifica chiamando una delle funzioni. Esempi di linguaggi di programmazione che supportano l'ereditarietà multipla sono C ++, Python, Perl, Eiffel, Dylan, Curl, Eulisp e Tcl. Java è uno dei linguaggi di programmazione più importanti che non supporta l'ereditarietà multipla.
Tuttavia, ci sono alcuni svantaggi associati all'ereditarietà multipla. La funzionalità complica l'invio del metodo e porta anche ulteriore controllo sull'applicazione. L'ereditarietà multipla richiederebbe la consapevolezza delle dipendenze, in particolare relative alla selezione dei metodi. Inoltre, i protocolli che utilizzano l'ereditarietà multipla richiederebbero più documentazione rispetto a quelli che utilizzano l'ereditarietà singola.
