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

1 769 pridėti baitai ,  prieš 15 metų
S
rv
S (rv)
'''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''', paveldėjusi klasė - '''dukterine klase''' ar '''poklasiu'''. Paveldėjimo ryšys kartais vadinamas '''specializacija''' (klasė "Dramblys" specializuoja klasę "Žinduolis") arba '''generalizacija''' (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, kuriis priima tėvinės klasės tipo parametrą.
 
Kai kurios [[programavimo kalba|programavimo kalbos]] leidžia daugybinį paveldėjimą (pvz., klasė "Studentų choro narys", paveldinti iš klasių "Studentas" ir "Dainininkas").
 
==Pavyzdys==
[[Image:Klasiu-paveldimumas.png|thumb|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 [[metodas (programavimas)|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".
 
[[Category:Objektinis programavimas]]
 
[[de:Objektorientierte Programmierung#Vererbung]]
[[en:Inheritance (computer science)]]
[[it:Ereditarietà (informatica)]]
[[nl:Overerving (informatica)]]
[[pl:Dziedziczenie (programowanie obiektowe)]]
[[pt:Herança]]
[[zh:继承 (计算机科学)]]
8 948

pakeitimai