Paveldėjimas (programavimas): Skirtumas tarp puslapio versijų

Straipsnis iš Vikipedijos, laisvosios enciklopedijos.
Ištrintas turinys Pridėtas turinys
Taksonomas (aptarimas | indėlis)
S Pusiau automatinis straipsnių be šaltinių žymėjimas
Taksonomas (aptarimas | indėlis)
S Pusiau automatinis tvarkymo skydelių datavimas
Eilutė 1: Eilutė 1:
{{Šaltiniai|nuo=2020 m. lapkričio}}
{{Šaltiniai|nuo=2020 m. lapkričio|neturi_nuo=2005 m. balandžio}}

{{otheruses|Paveldėjimas}}
{{otheruses|Paveldėjimas}}
'''Paveldėjimas''' – [[Objektinis programavimas|objektinio programavimo]] principas, kai tam tikra [[klasė (programavimas)|klasė]] yra kitos klasės konkretizacija. Bendresnė klasė vadinama '''tėvine klase''' ar '''viršklasiu''' arba '''bazine klase''', paveldėjusi klasė – '''dukterine klase''' ar '''poklasiu''' arba '''išvestine klase'''. Paveldėjimo ryšys kartais vadinamas '''specializacija''' (klasė „Dramblys“ specializuoja klasę „Žinduolis“) arba '''generalizacija''', '''apibendrinimu''' (klasė „Lėktuvas“ generalizuoja klasę „An-24“).
'''Paveldėjimas''' – [[Objektinis programavimas|objektinio programavimo]] principas, kai tam tikra [[klasė (programavimas)|klasė]] yra kitos klasės konkretizacija. Bendresnė klasė vadinama '''tėvine klase''' ar '''viršklasiu''' arba '''bazine klase''', paveldėjusi klasė – '''dukterine klase''' ar '''poklasiu''' arba '''išvestine klase'''. Paveldėjimo ryšys kartais vadinamas '''specializacija''' (klasė „Dramblys“ specializuoja klasę „Žinduolis“) arba '''generalizacija''', '''apibendrinimu''' (klasė „Lėktuvas“ generalizuoja klasę „An-24“).

02:51, 5 gruodžio 2020 versija

   Šiam straipsniui ar jo daliai trūksta išnašų į šaltinius.
Jūs galite padėti Vikipedijai pridėdami tinkamas išnašas su šaltiniais.

Paveldėjimasobjektinio programavimo principas, kai tam tikra klasė yra kitos klasės konkretizacija. Bendresnė klasė vadinama tėvine klase ar viršklasiu arba bazine klase, paveldėjusi klasė – dukterine klase ar poklasiu arba išvestine klase. Paveldėjimo ryšys kartais vadinamas specializacija (klasė „Dramblys“ specializuoja klasę „Žinduolis“) arba generalizacija, apibendrinimu (klasė „Lėktuvas“ generalizuoja klasę „An-24“).

Paveldėjusi klasė perima visą tėvinės klasės funkcionalumą, kurį gali iš dalies pakeisti bei papildyti. Prireikus, su paveldėjusios klasės objektais galima dirbti kaip su tėvinės klasės objektais, pavyzdžiui, paduoti metodui, kuris priima tėvinės klasės tipo parametrą.

Kai kurios programavimo kalbos leidžia daugybinį paveldėjimą (pvz., klasė „Studentų choro narys“, paveldinti iš klasių „Studentas“ ir „Dainininkas“).

Pavyzdys

Paveldėjimo schema

Jei turime klasę „Paukštis“ ir klasę „Pingvinas“, paveldinčią iš „Paukščio“, kiekvienas „Pingvinų“ klasės objektas turės ir Paukščio metodus (lesti(), perėti()) ir Pingvino metodus (plaukti()). Jei turėtume klasę medžiotojas su metodu daryti iškamšą su vienu parametru (parametro tipas – klasė „Paukštis“), šis metodas veiks paduodant parametrą, kurio tipas yra „Pingvinas“.