Polimorfizmni amalga oshirishda nima uchun dinamik bog'lanish muhim?
Polimorfizmni amalga oshirishda nima uchun dinamik bog'lanish muhim?

Video: Polimorfizmni amalga oshirishda nima uchun dinamik bog'lanish muhim?

Video: Polimorfizmni amalga oshirishda nima uchun dinamik bog'lanish muhim?
Video: Endi sizga kimdir telefon qilganida telefoningizni oʻzi sizga kim telefon qilayotganini aytib turadi 2024, May
Anonim

Dinamik bog'lanish ob'ekt havolasining ish vaqti turiga ko'ra, a'zo funksiya chaqiruvini ish vaqtida hal qilish imkonini beradi. Bu meros ierarxiyasidagi har bir foydalanuvchi tomonidan belgilangan sinfga boshqasiga ega bo'lish imkonini beradi amalga oshirish muayyan funktsiyaga tegishli.

Buni hisobga olgan holda, polimorfizmni amalga oshirishda dinamik bog'lanishning rolini nima tushuntiradi?

Buni biz statik deb ataymiz bog'lash : the bog'lash nomlar kompilyatsiya vaqtida sodir bo'ladi (ya'ni, statik). Bunday mexanizm deyiladi dinamik bog'lanish : the bog'lash ismlaridan an amalga oshirish ish vaqtida sodir bo'ladi (ya'ni, dinamik ). Dinamik bog'lanish ob'ektga yo'naltirilgan dasturlash tillari uchun zarurdir polimorfizmni amalga oshirish.

Xuddi shunday, dinamik bog'lanishdan qanday foydalanish kerak? Statik bog'lash uchun Type (Java-da sinf) ma'lumotlaridan foydalanadi bog'lash esa dinamik bog'lanish hal qilish uchun ob'ektdan foydalanadi bog'lash . Haddan tashqari yuklangan usullar statik yordamida bog'lanadi bog'lash bekor qilingan usullar yordamida bog'langan bo'lsa dinamik bog'lanish ish vaqtida.

Keyinchalik savol tug'iladi: dinamik bog'lovchi polimorfizmmi?

Polimorfizm Java-da ikkita tur mavjud: kompilyatsiya vaqti polimorfizm (statik bog'lash ) va Runtime polimorfizm ( dinamik bog'lanish ). ning muhim misoli polimorfizm ota-klassning bolalar sinf ob'ektiga qanday murojaat qilishi. Aslida, bir nechta IS-A munosabatlarini qondiradigan har qanday ob'ekt polimorfik tabiatda.

Dinamik ulanish qanday foydali?

Dinamik bog'lanish virtual funksiyalar yordamida erishiladi. Asosiy sinf ko'rsatkichi olingan sinf ob'ektiga ishora qiladi. Va funktsiya asosiy sinfda virtual deb e'lon qilinadi, so'ngra mos keladigan funktsiya virtual jadval yozuvi yordamida ish vaqtida aniqlanadi. Elementlar qanday uzatiladi ob'ektga yo'naltirilgan dasturlash tili ( OOP )?

Tavsiya: