Qual è un'eredità conflitto?

December 5

Nella programmazione orientata agli oggetti, un programmatore può progettare una classe che eredita le caratteristiche da più di una classe genitore, chiamato ereditarietà multipla. Quando un oggetto di classe riceve informazioni da due o più classi genitore che non sono d'accordo, si sperimenta un conflitto eredità.

Funzione

Un oggetto figlio di classe erediterà i metodi da sue classi principali. Quando un bambino eredita metodi con lo stesso nome, avrà un conflitto eredità e deve determinare il metodo da utilizzare. Tali conflitti possono verificarsi per caso quando un programmatore dà involontariamente metodi unici in diverse classi genitore lo stesso nome.

effetti

conflitti di eredità creano bug nel software. Quando un oggetto in esecuzione in un programma di esperienze di conflitto, verrà generato un errore. A meno che non si ha un modo per gestire i metodi contrastanti delle sue classi genitore, il programma potrebbe non funzionare correttamente o bloccarsi del tutto, a seconda di come critica l'oggetto.

considerazioni

Alcuni programmatori progettare programmi che non consentono l'ereditarietà multipla o un modo per convertire l'ereditarietà multipla di ereditarietà singola. I programmatori possono anche definire un insieme di regole per una classe da seguire per evitare conflitti di successione, come ad esempio disarticolare i metodi di una classe eredita in modo che non funzionano insieme.