Asosiy qism i-bob


Download 394.25 Kb.
bet5/14
Sana05.01.2022
Hajmi394.25 Kb.
#206631
1   2   3   4   5   6   7   8   9   ...   14
Bog'liq
dasturlash asoslari kurs ishi Sh.shomurodov

Ko'p meros


Ko'plab merosxo'rlik bilan sinf bir nechta ajdodlarga ega bo'lishi mumkin. Bunday holda, sinf barcha ajdodlarning usullarini meros qilib oladi . Ushbu yondashuvning afzalligi ko'proq moslashuvchanlikdir.

Ko'p merosxo'rlik C ++ da amalga oshiriladi . Ushbu imkoniyatni ta'minlaydigan boshqa tillarga Python va Eyfel kiradi . UML da bir nechta meros qo'llab-quvvatlanadi .

Ko'p merosxo'rlik - bu ajdodlarda bir xil usul nomlari mavjudligi sababli yuzaga kelishi mumkin bo'lgan xatolarning manbai. C ++ ( Java , C # va boshqalar) merosxo'rlari sifatida joylashtirilgan tillarda interfeyslar foydasiga bir nechta merosdan voz kechishga qaror qilindi . Siz deyarli har doim ushbu mexanizmdan foydalanmasdan qilishingiz mumkin. Ammo, shunga qaramay, agar bunday zarurat tug'ilsa, merosxo'r usullarni bir xil nomlar bilan ishlatish bilan to'qnashuvlarni hal qilish uchun, masalan, ko'rinishni kengaytirish operatsiyasidan foydalanish mumkin - "::" - ma'lum bir ota-onaning aniq usulini chaqirish.

Ajdodlarda xuddi shu usul nomlarining mavjudligi muammosini hal qilishga urinish Eyfel tilida amalga oshirildi, unda yangi sinfni tavsiflashda har bir meros qilib olingan sinflarning import qilingan a'zolarini va ularning bolalar sinfiga nomlarini aniq ko'rsatib berish kerak.

Ob'ektga yo'naltirilgan zamonaviy dasturlash tillarining aksariyati ( C # , Java , Delphi va boshqalar) bir vaqtning o'zida ota-bobolar sinfidan meros olish qobiliyatini qo'llab-quvvatlaydi va shu sinf bilan bir nechta interfeyslarning usullarini amalga oshiradi. Ushbu mexanizm sizga bir nechta merosni katta darajada almashtirishga imkon beradi - interfeys usullari aniq bekor qilinishi kerak, bu esa turli xil ota-bobolar sinflarining bir xil usullarining funktsiyalarini meros qilib olishda xatolarni bartaraf etadi.


Download 394.25 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9   ...   14




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