Video: Nima uchun C++ da bir nechta meros qo'llab-quvvatlanadi, lekin Java-da emas?
2024 Muallif: Lynn Donovan | [email protected]. Oxirgi o'zgartirilgan: 2023-12-15 23:54
C++ , Umumiy lisp va bir nechta boshqa tillar bir nechta merosni qo'llab-quvvatlaydi esa java qilmaydi qo'llab-quvvatlash bu. Java ruxsat bermaydi ko'p meros undan kelib chiqadigan noaniqlikdan qochish uchun. Bunday muammoning misollaridan biri olmos muammosi ko'p meros.
Shunga ko'ra, nima uchun Java-da bir nechta meros qo'llab-quvvatlanmaydi?
Java qo'llab-quvvatlaydi ko'p meros faqat interfeyslar orqali. Sinf istalgan sonli interfeyslarni amalga oshirishi mumkin, lekin faqat bitta sinfni kengaytirishi mumkin. Ko'p meros hisoblanadi emas qo'llab-quvvatlanadi, chunki bu halokatli olmos muammosiga olib keladi. Siz interfeysdan hech qanday funksiyaga ega bo'lmang.
Bundan tashqari, bir nechta merosda olmos muammosi nima? “ olmos muammosi ” - ruxsat berish natijasida yuzaga kelishi mumkin bo'lgan noaniqlik ko'p meros . Bu jiddiy muammo imkonini beruvchi tillar uchun (masalan, C++). ko'p meros davlat. Biroq, Java-da ko'p meros sinflar uchun ruxsat berilmaydi, faqat interfeyslar uchun va ular holatini o'z ichiga olmaydi.
Xuddi shunday, odamlar nima uchun C++ bir nechta merosni qo'llab-quvvatlaydi, lekin C# qo'llab-quvvatlamaydi?
Ko'p meros ichida C# C# bir nechta merosni qo'llab-quvvatlamaydi , chunki ular bu qo'shimchani asoslashdi ko'p meros haddan tashqari murakkablik kiritdi C# juda kam foyda keltirganda. In C# , darslarga faqat ruxsat beriladi meros bitta ota-ona sinfidan, yakka deb ataladi meros olish.
Qanday qilib C++ bir nechta merosni qo'llab-quvvatlaydi?
Ko'pgina boshqa ob'ektga yo'naltirilgan dasturlash tillaridan farqli o'laroq, C++ imkon beradi ko'p meros . Ko'p meros bolalar sinfiga ruxsat beradi meros bir nechta ota-onalar sinfidan. Hayvonlar va sudraluvchilar sinflari meros undan. Faqat Animal klassi nafas olish() usulini bekor qiladi.