Jump to content

Ժառանգում (ծրագրավորում)

Վիքիպեդիայից՝ ազատ հանրագիտարանից
Ժառանգում
Տեսակհասկացություն
Դասrelation?

Ժառանգում (անգլ.՝ inheritance), օբյեկտ կողմնորոշված ծրագրավորման մեխանիզմ, թույլ է տալիս ստեղծել մի նոր կլասս հնի հիման վրա (ժառանգական)։ Նոր ստեղծված կլասսը ունենում է հին կլասսի բոլոր առանձնահատկությունները ու հատկությունները։ Նոր կլասսն իրավունք ունի ստեղծել նոր մեթոդներ և հատկություններ, բացի այդ իրավունք ունի վերցնել ծնող կլասսից։ Այն թույլ է տալիս կառուցել կլասսների հիերարխիա։ Նա մեկն է հինգ տեսակի միություններից։

Ժառանգականությունը տրամադրում է ՕՕՊ(ՕԿԾ) պոլիմորֆիզմ և տվյալների աբստրակցիա[1]։

Ժառանգականության տարբերակներ

[խմբագրել | խմբագրել կոդը]

Հասարակ ժառանգում

[խմբագրել | խմբագրել կոդը]

Կլասսը, որից ստեղծվել է նոր կլաս կոչվում է հիմնական կամ ծնողական (անգլ.՝ base class). Այն կլասսները որոնք ս��եղծվել են հիմնական կլասսներից անվանվում են հետնորդներ, ժառանգներ կամ ստացված կլասսսներ (անգլ.՝ derived class

Որոշ լեզուներում օգտագործվում են վերացական կլասսներ։ Վերացական կլասսը մի կլասս է, որն իր մեջ պարունակում է գեթ մեկ վերացական մեթոդ, այն նկարագրված է ծրագրում, ունի դաշտեր, մեթոդներ, չի կարող օգտագործվել ուղղակիորեն օբյեկտ ստեղծելիս։

Օրինակ վերացական կլասս կարող է լինել «համալսարանի աշխատակից», որից ժառանգվում են "շրջանավարտների», «պրոֆեսորը» և այլ դասեր։ Քանի որ ստացված դասեր ունեն ընդհանուր դաշտերը եւ գործառույթները (օրինակ՝ «ծննդյան տարեթիվ»), այդ անդամները կարելի է բնութագրել, որպես բազային դաս։ Ծրագրում ստեղծվում են օբյեկտներ "շրջանավարտների» և «պրոֆեսորը» հիման վրա։ Անիմաս կլինի ստեղծել օբյեկտ «համալսարանի աշխատակից»-ի հիման վրա։

Բազմակի ժառանգում

[խմբագրել | խմբագրել կոդը]

Բազմակի ժառանգման ժամանակ կլասսը կարող է ունենալ մեկից ավելի նախահայր։ Այս ժամանակ կլասսը վերցնում է բոլոր նախահայրերի մեթոդները։ Առավելությունները այս մոտեցման մեջ այն է, որ ավելի մեծ ճկունություն ունի կլասսը։ Բազմակի ժառանգումներ իրականացվում է «C++»-ում։ Ուրիշ լեզուներից, որ ունեն այդ հնարավորությունը Python-ն է[2]։ Բազմակի ժառանգում աջակցում է նաև ծրագրավորման լեզուն[3]։

Ծանոթագրություններ

[խմբագրել | խմբագրել կոդը]