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

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

Ժառանգում
Տեսակհասկացություն
Դասrelation?

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

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

Հասարակ ժառանգում խմբագրել

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

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

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

Բազմակի ժառանգում խմբագրել

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

Ծանոթագրություններ խմբագրել