Kotlin Somo la 26: Inheritance (Urithi)
Katika somo hili utakwend akujifunza jinsi ambavyo class moja inaweza kuriti method na properties kutoka kwenye class nyingine.
? Utangulizi
dKatika programu zinazotumia mwelekeo wa object-oriented (OOP), urithi ni kipengele kinachowezesha class moja kurithi tabia na sifa kutoka kwa class nyingine. Kotlin, kama lugha ya kisasa ya OOP, huipa kipaumbele usalama wa muundo wa code kwa kuzuia kurithiwa kiholela. Kwa hiyo, class au method haiwezi kurithiwa bila kuwekwa wazi kwa kutumia open. Katika somo hili, tutajifunza si tu kuhusu jinsi ya kuandika inheritance kwenye Kotlin, bali pia jinsi modifiers mbalimbali zinavyoathiri uwezo wa urithi au upatikanaji wa vipengele vya class.
✅ Maana ya Inheritance
Inheritance ni dhana ya Object-Oriented Programming (OOP) inayoruhusu class moja kurithi mali (properties) na tabia (methods) kutoka kwa class nyingine.
Kwa mfano: Kama tuna class ya
Mnyama, tunaweza kutengeneza class yaMbwaauPakainayorithi kutoka kwaMnyamabila kuandika upya kila kitu.
Supper class na subclass:
class ambayo inarithiwa huitwa parent class yaani mzazi. Hii pia huitwa supper class na class ambayo inarithi huitwa child class yaani mtoto. Hii pi huitwa subclass. Ili class iweze kuruthiwa inahitajika kuwa open yaani open class. Class inaweza kuwa open kwa kuwekewa keyword ya open.
? Lengo la Inheritance
-
Kurudia code (reusability)
-
Kupunguza makosa (less redundancy)
-
Kuweka hierarkia ya class zinazohusiana
-
Kurahisisha matengenezo na upanuzi wa programu
? Maneno Muhimu
| Kipengele | Maelezo |
|---|---|
open class |
Class inayoruhusu kurithiwa (by default class zote Kotlin ni final) |
: (colon) |
Hutumika kuonyesha urithi |
super |
Keyword ya kufikia class ya mzazi kutoka class ya mtoto |
override |
Keyword ya kuandika upya method ya mzazi kwenye mtoto |
? Muundo wa Inheritance
open class Mzazi {
fun salamu() = println("Habari kutoka kwa mzazi")
}
class Mtoto : Mzazi()
Maelezo:
-
Mzazini class ya juu (superclass au base class) -
Mtotoni class ya chini (subclass au derived class) -
Mtotoanarithi functionsalamu()kutokaMzazi
? Mfano Halisi
open class Mnyama(val jina: String) {
fun lala() = println("$jina analala")
fun kula() = println("$jina anak...Umeionaje Makala hii.. ?
Share On:
👉1 Sira ya Mtume Muhammad (s.a.w) 👉2 kitabu cha Simulizi 👉3 Madrasa kiganjani 👉4 Kitabu cha Afya 👉5 Kitau cha Fiqh 👉6 Tafasiri ya Riyadh Swalihina
Post zinazofanana:
Kotlin Somo la 31: Objects na Companion Objects
Somo hili linaeleza matumizi ya objects na companion objects katika Kotlin. Tutajifunza tofauti kati ya object na class ya kawaida, faida za singleton pattern, na jinsi ya kutumia companion kama mbadala wa static members katika Java.
Soma Zaidi...KOTLIN somo la 21: Jinsi ta kutengeneza library
Katika somo hili utajifunza kuhusu Kotlin library. Pia tutakwenda kutengeneza library yetu wenyewe kwa ajili ya kufanya mazoezi zaidi.
Soma Zaidi...KOTLIN somo la 4: Aina za Data kwenye Kotlin
Katika somo hili utakwenda kujifunza kuhusu aina za data zinazotumika kwenye Kotlin.
Soma Zaidi...KOTLIN somo la 16:baadhi ya method na properies zinazofanya kazi kwenye string
Katika somo hili tutajifunza kuhusu method za String zinazotumika kwenye Kotlin.
Soma Zaidi...Kotlin somo la 26: Dhana ya class, object na method kwenye kotlin
Katika soomo hili utakwenda kujifunza kuhusu class, maana yake, na jinsi ya kuitengeneza
Soma Zaidi...Kotlin somo la 23: Utofauti wa package na library
Katika somo hili utakwenda kujifunza tofauti wa library na package
Soma Zaidi...