Ondersteun Java meervoudige oorerwing Hoekom of hoekom nie?
Ondersteun Java meervoudige oorerwing Hoekom of hoekom nie?

Video: Ondersteun Java meervoudige oorerwing Hoekom of hoekom nie?

Video: Ondersteun Java meervoudige oorerwing Hoekom of hoekom nie?
Video: Angular 8 : Custom Pipe Example With Multiple argument | Java Techie 2024, November
Anonim

java ondersteun nie veelvuldige erfporsies nie deur klasse, maar deur die koppelvlakke, kan ons gebruik veelvuldige erfporsies . Geen java nie nie ondersteun meervoudige erfenis direk omdat dit lei tot die oorheersing van metodes wanneer beide uitgebreide klasse dieselfde metodenaam het.

Word meervoudige oorerwing gevolglik in Java toegelaat?

C++, Common Lisp en min ander tale ondersteun meervoudige erfenis terwyl java ondersteun dit nie. Java nie meervoudige erfenis toelaat om die dubbelsinnigheid wat daardeur veroorsaak word te vermy. Een van die voorbeelde van so 'n probleem is die diamant probleem wat voorkom in meervoudige erfenis.

Weet ook, hoekom is meervoudige oorerwing sleg? Die gevaar met meervoudige erfenis kompleksiteit is. Aangesien jy kan beïnvloed veelvuldig modules in jou toepassing uit dieselfde ouerklasse, is dit nie so maklik om oor kodeveranderings te redeneer nie. Enige fout kan 'n kettingreaksie van goggas veroorsaak. Dit is waar meervoudige erfenis produktief kan word.

Weet ook watter erfenis nie deur Java ondersteun word nie. Hoekom?

In Java kan dit nooit voorkom nie, aangesien daar geen meervoudige erfenis . Hier, selfs al gaan twee koppelvlakke dieselfde metode hê, sal die implementeringsklas slegs een metode hê en dit sal ook deur die implementeerder gedoen word. Dinamiese laai van klasse maak die implementering van meervoudige erfenis moeilik.

Waarom word meervoudige oorerwing in koppelvlak gebruik?

Soos ons verduidelik het in die erfenis hoofstuk, meervoudige erfenis is nie ondersteun in die geval van klas as gevolg van dubbelsinnigheid. Dit is egter ondersteun in die geval van 'n koppelvlak want daar is geen onduidelikheid nie. Dit is omdat die implementering daarvan deur die implementeringsklas verskaf word. koppelvlak Wysbaar{

Aanbeveel: