Waarom ondersteun Java nie meervoudige oorerwing nie?

Waarom ondersteun Java nie meervoudige oorerwing nie?
Waarom ondersteun Java nie meervoudige oorerwing nie?
Anonim

Java ondersteun slegs veelvuldige oorerwing deur koppelvlakke. 'n Klas kan enige aantal koppelvlakke implementeer, maar kan slegs een klas uitbrei. Meervoudige oorerwing word nie ondersteun nie, want dit lei tot dodelike diamantprobleem diamantprobleem Die "diamantprobleem" (soms na verwys as die "Dodelike Diamant van die Dood") is 'n onduidelikheid wat ontstaan wanneer twee klasse B en C erf van A, en klas D erf van beide B en C. … Dit word die "diamantprobleem" genoem vanweë die vorm van die klasoorerwingsdiagram in hierdie situasie. https://en.wikipedia.org › wiki › Meervoudige_erfenis

Multiple erfenis - Wikipedia

Steun Java meervoudige oorerwing of nie?

Wanneer een klas meer as een klasse uitbrei, word dit meervoudige oorerwing genoem. … Java laat nie meervoudige oorerwing toe nie.

Wat is die probleem met meervoudige oorerwing?

Veelvoudige erfenis is al vir baie jare 'n kontroversiële kwessie, met teenstanders wat wys op die groter kompleksiteit en dubbelsinnigheid daarvan in situasies soos die "diamantprobleem", waar dit dubbelsinnig kan wees soos na watter ouerklas 'n spesifieke kenmerk word oorgeërf van as meer as een ouerklas dieselfde implementeer …

Hoekom ondersteun C++ nie meervoudige oorerwing in Java nie?

Dit is moontlik omdat Java nielaat meervoudige oorerwing toe, maar slegs veelvuldige implementering vanaf veelvuldige koppelvlak. … Aangesien koppelvlak in java slegs die handtekening van metodes kan verklaar sonder om dit te implementeer, bestaan die probleem nie as meervoudige koppelvlak afgelei word nie.

Hoe kan 'n Java-koppelvlak meervoudige oorerwing hê?

Meervoudige erfenis in Java volgens koppelvlak

  1. koppelvlak Drukbaar{
  2. void print;
  3. }
  4. koppelvlak wysbaar{
  5. void show;
  6. }
  7. klas A7-implemente Drukbaar, vertoonbaar{
  8. publieke leemte druk{System.out.println("Hallo");}

Aanbeveel: