Առաջաբան գրել - Այս գրառումը մաս է կազմում Օբյեկտ կողմնորոշված ABAP նյութեր.
Բառը
ներածություն
OOABAP-ի երեք հենասյուներից մեկն օգտագործում է Super դասի այս հայեցակարգը «Ժառանգության» հասնելու համար: Super class-ը մեզ թույլ է տալիս ընդլայնել այդ դասը՝ ստեղծելով դրա ենթադաս: Այս ենթադասը կունենա սուպեր դասի բոլոր հատկությունները, գումարած այն կարող է ունենալ նաև լրացուցիչ հատկություններ:
սահմանումը
A դաս որն ունի դրանից ստացված դաս, հայտնի է որպես «սուպեր դաս»:
Դաս Super Class ստեղծելու համար առաջին քայլը պետք է հանել վանդակը, որը ցույց է տալիս Վերջնական դասը, իսկ դասը ստեղծում է T-Code SE24-ի (Class Builder) միջոցով: Որովհետև, եթե դասը ստեղծվում է որպես Վերջնական, չի կարող ավելի երկարաձգվել, և այդ դեպքում ժառանգությունը չի կարող հասնել:
Եթե մշակողը օգտագործում է սուպեր դասի և ենթադասի այս հայեցակարգը, ապա նա կարող է ունենալ «Ժառանգության» բոլոր առավելությունները:
Սուպեր դասի ծրագիր SAP ABAP-ում:
Եկեք օրինակ վերցնենք այս գործատուի դասի «ZCL_EMPLOYER»: Այս գործատուի դասը եկամուտ ստանալու մեկ մեթոդ ունի՝ «GET_INCOME»:
CLASS zcl_գործատու ՍԱՀՄԱՆՈՒՄ
ՀԱՆՐԱՅԻՆ ԲԱԺԻՆ.
ՄԵԹՈԴՆԵՐ. get_income ՎԵՐԱԴԱՐՁՈՂ ԱՐԺԵՔ (եկամուտ) ՏԵՍԱԿ F.
ՄԱՍՆԱՎՈՐ ԲԱԺԻՆ.
ՏՎՅԱԼՆԵՐ՝ եկամուտի ՏԵՍԱԿԸ F ԱՐԺԵՔ 100:
ENDCLASS. «ԴԱՍԻ ՍԱՀՄԱՆՈՒՄ
CLASS zcl_գործատու ԻՐԱԿԱՆԱՑՈՒՄ.
ՄԵԹՈԴ ստանալ_եկամուտ.
եկամուտ = ինձ->եկամուտ * 80.
ՎԵՐՋ ՄԵԹՈԴ.
ENDCLASS. «ԴԱՍԻ ԻՐԱԿԱՆԱՑՈՒՄ
Այժմ ես ուզում եմ ստեղծել դրա ենթադաս, որտեղ ես ուզում եմ վերասահմանել այս մեթոդը «GET_INCOME»:
CLASS zcl_manager ԺԱՌԱՆԳՈՒԹՅԱՆ ՍԱՀՄԱՆՈՒՄ zcl_employer-ից:
ՀԱՆՐԱՅԻՆ ԲԱԺԻՆ.
ՄԵԹՈԴՆԵՐ. get_income ՎԵՐԱՍԱՀՄԱՆՈՒՄ.
ՄԱՍՆԱՎՈՐ ԲԱԺԻՆ.
ՏՎՅԱԼՆԵՐ՝ եկամուտի ՏԵՍԱԿԸ F ԱՐԺԵՔ 100:
ENDCLASS. «ԴԱՍԻ ՍԱՀՄԱՆՈՒՄ
CLASS zcl_manager ԻՐԱԿԱՆԱՑՈՒՄ.
ՄԵԹՈԴ ստանալ_եկամուտ.
եկամուտ = ինձ->եկամուտ * 100.
ՎԵՐՋ ՄԵԹՈԴ.
ENDCLASS. «ԴԱՍԻ ԻՐԱԿԱՆԱՑՈՒՄ
Մեկ այլ դասից դաս ստանալուց հետո նոր դասը հայտնի կդառնա որպես «ԵՆԹԱԴԱՍ» կամ «CHILD CLASS»: Իսկ դասը, որից բխում է նոր դասը, հայտնի կլինի որպես «ՍՈՒՊԵՐ ԿԼԱՍ» կամ «ԾՆՈՂ ԴԱՍ»:
Ինչպես արդեն նշվեց, ենթադասը կարող է ունենալ սուպեր դասի բոլոր հատկությունները և մեթոդները: Մշակողը կարող է վերասահմանել սուպեր դասի գոյություն ունեցող մեթոդները և կարող է նաև ավելացնել որոշ նոր գործառույթներ դրանում:
Առավելությունները:
Ապահովում է կոդի ֆունկցիոնալության կրկնակի օգտագործման հնարավորություն և արագ իրականացման ժամանակ: Այն կարող է ունենալ «Ժառանգության» բոլոր առավելությունները:
0 Comments