Vai Java atbalsta vairāku mantojumu Kāpēc vai kāpēc ne?
Vai Java atbalsta vairāku mantojumu Kāpēc vai kāpēc ne?

Video: Vai Java atbalsta vairāku mantojumu Kāpēc vai kāpēc ne?

Video: Vai Java atbalsta vairāku mantojumu Kāpēc vai kāpēc ne?
Video: #51 Multiple Inheritance in Java 2024, Aprīlis
Anonim

Java neatbalsta vairākus mantojumus caur klasēm, bet, izmantojot saskarnes, mēs varam izmantot vairāki mantojumi . Nav java nav atbalstīt vairākkārtēju mantojumu tieši tāpēc, ka tas noved pie metožu ignorēšanas, ja abām paplašinātajām klasēm ir viens un tas pats metodes nosaukums.

Līdz ar to, vai Java ir atļauta vairākkārtēja mantošana?

C++, Common Lisp un dažas citas valodas atbalsta daudzkārtējs mantojums kamēr java to neatbalsta. Java nav atļaut vairākkārtēju mantojumu lai izvairītos no tā radītās neskaidrības. Viens no šādas problēmas piemēriem ir dimanta problēma, kas rodas daudzkārtējs mantojums.

Ziniet arī, kāpēc daudzkārtēja mantošana ir slikta? Briesmas ar daudzkārtējs mantojums ir sarežģītība. Tā kā jūs varētu ietekmēt vairākas moduļus savā lietotnē no tām pašām vecākām klasēm, nav tik viegli apsvērt koda izmaiņas. Jebkura kļūda var izraisīt kļūdu ķēdes reakciju. Šeit ir vieta daudzkārtējs mantojums var kļūt produktīvs.

Uzziniet arī, kuru mantojumu Java neatbalsta. Kāpēc?

Java tas nekad nevar notikt, jo nav daudzkārtējs mantojums . Šeit pat tad, ja divām saskarnēm būs viena un tā pati metode, ieviešanas klasei būs tikai viena metode, un arī to darīs īstenotājs. Dinamiskā nodarbību ielāde padara to ieviešanu daudzkārtējs mantojums grūti.

Kāpēc interfeisā tiek izmantota daudzkārtēja mantošana?

Kā mēs esam paskaidrojuši mantojums nodaļa, daudzkārtējs mantojums nav atbalstīts klases gadījumā neskaidrības dēļ. Tomēr tā ir atbalstīts gadījumā an saskarne jo nav nekādu neskaidrību. Tas ir tāpēc, ka tā ieviešanu nodrošina ieviešanas klase. saskarne Parādāms{

Ieteicams: