Subclass Creation
Sizda bir `class` bo'lganidan so'ng, siz ushbu `class`dan subtur yaratishingiz mumkin.
Subturlarni Yaratish
Sizda bir class bo'lganidan so'ng, siz ushbu classdan subtur yaratishingiz mumkin. Subtur asosiy classning atributlari va usullarini meros qilib oladi.
Shuningdek, siz ota-ona atributlari va usullarini o'zgartirishingiz mumkin. Bu degani, agar farzandda ota-ona usuli yoki atributi bilan bir xil nomga ega bo'lsa, Python farzandning usulini ishlatadi.
Oldingi Ball classimizni olib, uni subtur sifatida ishlatamiz:
Endi Balldan subtur yaratamiz va ball.py bilan bir xil papkada yangi modul yaratamiz: bowling_ball.py.
Balldan subtur yaratish uchun siz quyidagi kodni yozasiz: class BowlingBall(ball.Ball). Bu Ballni subtur qiladi va yangi BowlingBall classini yaratadi.
Ushbu classda __init__() metodi ta'riflanmagan. Bu, siz ota-onaning __init__() metodini meros qilib olasiz va uni ishlatasiz. Shuningdek, siz ota-ona classda yo'q yangi roll() usulini qo'shdingiz.
Endi terminalda ushbu kodni ishga tushirishga harakat qilaylik:
Bu quyidagi xatoni chiqaradi:
Ah! BowlingBall misolini to'g'ri yaratmadik. Yuqorida aytilganidek, BowlingBall Ballning __init__ metodidan foydalanmoqda, shuning uchun biz Ballning __init__ metodi kutayotgan argumentlarni taqdim etishimiz kerak.
Kodni to'g'irlab, u to'g'ri ishlashi uchun quyidagicha o'zgartiramiz:
Endi uni ishga tushirganingizda, quyidagi natijani olishingiz kerak:
Kodga qaytib, bounce() usulini chaqiradigan qo'shimchani qo'shishga harakat qiling va u siz uchun ham ishlayotganini tekshirib ko'ring.
Last updated on