Ислом Каримов



Download 1,27 Mb.
Pdf ko'rish
bet36/46
Sana25.06.2022
Hajmi1,27 Mb.
#701850
1   ...   32   33   34   35   36   37   38   39   ...   46
Bog'liq
С да дастурлаш 2

12.5. Ворислик 
Ворислик мавжуд бўлган синфнинг таърифи асосидаёқ янги синфни 
яратиш имконини беради. Янги синф бошқаси асосида яратилгач, унинг 
таърифи автоматик тарзда мавжуд синфнинг барча ҳусусиятлари, ҳулқ-атвори 
ва жорий қилинишига ворислик қилади. Аввал мавжуд бўлган синф 
интерфейсининг барча методлари ва ҳусусиятлари автоматик тарзда ворис 
интерфейсида пайдо бўлади. Ворислик ворис синфида бирон-бир жиҳатдан 
тўғри келмаган ҳулқ-атворни аввалдан кўра билиш имконини беради. Бундай 
фойдали 
ҳусусият 
дастурий 
таъминотни 
талабларнинг 
ўзгаришига 
мослаштириш имконини беради. Агар ўзгартиришлар киритишга эҳтиёж 
туғилса, бу холда эски синф функцияларига ворислик қилувчи янги синф ёзиб 
қўя қолинади. Кейин ўзгартирилиши лозим бўлган функцияларга қайтадан 
таъриф берилади ҳамда янги функциялар қўшилади. Бундай ўрнига ўрин 
қўйишнинг мазмуни шундан иборатки, у дастлабки синф таърифини 
ўзгартирмай туриб, объект ишини ўзгартириш имконини беради. Ахир бу ҳолда 
қайта тест синовларидан пухта ўтказилган асосий синфларга тегмаса ҳам 
бўлади. 
Агар сиз кўп марталаб қўллаш ёки бошқа бирон мақсадларга кўра 
ворисликни қўллашга аҳд қилсангиз, аввал ҳар гал қаранг - ворислик-синф 
билан ворисликни бераётган синфнинг турлари ўзаро мос келадими. 
Ворисликда турларнинг мос келиши кўпинча «Ис-a» тести деб аталади. Иккита 
синф бир ҳил турга эга бўлгандагина, ўзаро «Ис-a» муносабатида турибди деб 
ҳисобланади. 


12. Объектга йўналтирилган дастурлаш ва унинг тамойиллари 
~ 61 ~ 
Биринчи синф ўзида иккинчи синфнинг экземплярига эга бўлгандагина 
иккита синф ўзаро «Хaс-a» муносабатида турибди деб ҳисобланади. 
Айтайлик, Caнинe (Итларники) базавий синфи мавжуд. У ҳолда ит 
итники бўлади (A дoг ис a caнинe). Шунинг учун Дoг синфи Caнинe синфининг 
ҳосиласи бўлмоғи керак. Шунинг билан бирга итнинг думи (Тaил) бор (A дoг 
хaс a тaил). Шунинг учун Тaил синфининг экземпляри (нушаси)ни, масалан, 
Caнинe га киритиб қўйиш керак. Ушбу бироз биологик мисолдан кўриниб 
турганидек, «Иa-a» муносабати синфларнинг табақаланишида намоён бўлади. 
Синфлар орасидаги «Хaс-a» муносабати эса шунга олиб келадики, бир синф 
иккинчисида мавжуд бўлади. 
Бошқа синфга ворислик бўлаётган синф ворис бераётган синф билан 
шундай муносабатда бўлмоғи лозимки, бунда натижавий муносабатлар ўз 
маъносига эга бўлмоғи, яъни ворислик табақаланишига амал қилиниши керак. 
Ворислик - синфлар ўртасида «Ис-a» муносабатларини ўрнатиш 
имконини берадиган механизм. Ворислик синф ўз аждоди бўлган синфдан 
ҳусусиятлар ва ҳулқ-атворни ворис қилиб олаётганида, у шунингдек ўз аждоди 
бўлган синф эҳтимол бошқа синфлардан ворис қилиб олган хусусиятлар ва 
хулқ-атворга ҳам эга бўлади. 
Ворислик табақаланиши қандайдир маъно касб этиши учун аждодлар 
устидан қандай амаллар бажарилган бўлса, авлодлар устидан ҳам шундай 
амаллар бажарилиш имконияти бўлиши лозим. Бу «Ис-a» тести ёрдамида 
текширилади. Ворислик синфга функцияларни кенгайтириш ва янгиларини 
қўшиш учун рухсат берилади. Аммо унга функцияларни чиқариб ташлашга 
рухсат йўқ.
Ворислик ёрдамида қурилган синф методлар ва ҳусусиятларнинг учта 
кўринишига эга бўлиши мумкин: 
- Ўрнига ўрин қўйиш (алмаштириш): янги синф аждодларининг методи 
ёки ҳусусиятини шунчаки ўзлаштириб олмайди, балки унга янги таъриф ҳам 
беради; 
- Янги: янги синф бутунлай янги методлар ёки ҳусусиятларни қўшади; 
- Рекурсив: янги синф ўз аждодлари методлари ёки ҳусусиятларини 
тўғридан-тўғри олиб қўя қолади. 
Объектга мўлжаллангантилларнинг кўпчилиги таърифни маълумот 
ўзатилган объектдан қидирадилар. Агар у ердан таъриф топишнинг иложи 
бўлмаса, бирон таъриф топилмагунча, қидирув табақалар бўйича юқорига 
кўтарилаверади. Маълумотни бошқариш айнан шундай амалга оширилади 
ҳамда айнан шу туфайли ўринга ўрин қўйиш жараёни иш кўрсатади. 
Ворис синфлар ҳимояланган кириш даражасига эга бўлган методлар ва 
ҳусусиятларга кириш хуқуқини олишлари мумкин. Базавий синфда фақат 
авлодлар фойдаланиши мумкинлиги аниқ бўлган методларгагина ҳимояланган 
кириш даражасини беринг. Бошқа ҳолларда хусусий ёки оммавий кириш 
даражасидан фойдаланиш лозим. Бундай ёндошув барча синфларга, шу 


12.6. Полиморфизм 
~ 62 ~ 
жумладан, тармоқ синфларга ҳам кириш ҳуқуқи берилганидан кўра, 
мустаҳкамроқ конструкцияни яратиш имконини беради. 
Ворислик турлари 
Ворислик уч асосий ҳолларда қўлланади: 
1. Кўп марталаб фойдаланишда; 
2. Ажралиб туриш учун; 
3. Турларни алмаштириш учун. 
Ворисликнинг айрим турларидан фойдаланиш бошқаларидан кўра 
афзалроқ ҳисобланади. Ворислик янги синфга эски синфнинг амалда 
қўлланишидан кўп марталаб фойдаланиш имконини беради. Кодни қирқиб 
ташлаш ёки киритиш ўрнига, ворислик кодга автоматик тарзда киришни 
таъминлайди, яъни кодга киришда, у янги синфнинг бир қисмидек олиб 
қаралади. Кўп марталаб қўллаш учун ворисликдан фойдаланар экансиз, сиз 
ворис қилиб олинган реализация (жорий қилиниш) билан боғлиқ бўласиз. 
Ворисликнинг бу турини эҳтиёткорлик билан қўллаш лозим. Яхшиси бу ўринда 
«Хaс-a» муносабатидан фойдаланиш керак. 
Фарқлаш учун ворислик фақат авлод-синф ва аждод-синф ўртасидаги 
фарқларни дастурлаш имконини беради. Фарқларни дастурлаш ғоят қудратли 
воситадир. Кодлаш ҳажмининг кичиклиги ва коднинг осон бошқарилиши 
лойиҳа ишланмасини осонлаштиради. Бу ҳолда код сатрларини камроқ ёзишга 
тўғри келадики, бу қўшиладиган ҳатолар миқдорини ҳам камайтиради. 
Алмаштириш имконияти - ОМЁ да муҳим тушунчалардан бири. 
Ворислик синфга унинг аждоди бўлмиш синфга юбориладиган хабарларни 
юбориш мумкин бўлгани учун, уларнинг ҳар иккаласига бир хил муносабатда 
бўлиш мумкин. Айнан шунинг учун ворислик синфни яратишда ҳулқ-атворни 
чиқариб ташлаш мумкин эмас. Алмаштириш имкониятини қўллаб, дастурга ҳар 
қандай тармоқ турларни қўшиш мумкин. Агар дастурда аждод қўлланган бўлса, 
бу ҳолда у янги объектлардан қандай фойдаланишни билади. 

Download 1,27 Mb.

Do'stlaringiz bilan baham:
1   ...   32   33   34   35   36   37   38   39   ...   46




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish