Somo hili linaeleza dhana ya polymorphism katika OOP ya Kotlin—uwezo wa kutumia method au object moja kufanya kazi tofauti kulingana na muktadha wake. Tutajifunza aina kuu za polymorphism, jinsi ya kuandika code inayotumia override, open, super, pamoja na mifano hai.
Katika programming yenye mwelekeo wa vitu (OOP), polymorphism ni dhana muhimu inayomaanisha “uwezo wa kuwa katika maumbo mbalimbali.” Katika Kotlin, hii inamaanisha kuwa method moja inaweza kutenda kwa njia tofauti kutegemeana na context yake. Kwa mfano, class ya mzazi inaweza kuwa na method sauti(), lakini class za watoto kama Mbwa au Paka zinaweza kuifunika method hiyo kwa tabia tofauti. Polymorphism huongeza flexibility, reusability na scalability ya code katika programu kubwa.
Polymorphism ni neno la Kigiriki linalomaanisha “maumbo mengi.” Katika Kotlin, inamaanisha kuwa object au method moja inaweza kutumika kwa namna tofauti kulingana na muktadha.
Aina kuu za polymorphism:
Compile-time Polymorphism (Static) – kupitia method overloading
Run-time Polymorphism (Dynamic) – kupitia method overriding
Ni pale ambapo subclass inabadilisha tabia ya method iliyo katika superclass kwa kutumia override.
open class Mnyama {
open fun sauti() = println("Mnyama anatoa sauti")
}
class Mbwa : Mnyama() {
override fun sauti() = println("Mbwa anabweka: Woof!")
}
class Paka : Mnyama() {
override fun sauti() = println("Paka anasema: Meow!")
}
fun toaSauti(m: Mnyama) {
m.sauti()
}
fun main() {
val mbwa = Mbwa()
val paka = Paka()
toaSauti(mbwa)
toaSauti(paka)
}
Output:
Mbwa anabweka: Woof!
Paka anasema: Meow!
✅ Hapa function
toaSauti()haitambui ni class gani – inapokeaMnyama, lakini anapotumwaMbwaauPaka, tabia hubadilika ku">...Jiunge nasi WhatsApp kupata update zetu
Zoezi la Maswali
Umeionaje Makala hii.. ?
Nzuri Mbaya SaveShare On:
Share follows: 0 | Unique share links followed: 0Sponsored links
👉1 ai web app 👉2 Madrasa kiganjani 👉3 Bongolite - Game zone - Play free game 👉4 kitabu cha Simulizi 👉5 Kitabu cha Afya 👉6 web hostingPost zinazofanana:
Kotlin Somo la 30: Data Classes
Somo hili linaeleza maana ya data classes katika Kotlin, kwa nini zipo, jinsi ya kuzitumia, sifa zake, pamoja na mifano ya vitendo. Pia tutajifunza tofauti kati ya class ya kawaida na data class.
Soma Zaidi...KOTLIN somo la 7: Jinsi ya kutumia If na ifelse kwenye Kotlin
Katika somo hili utakwenda kujifunza kuhusu namna ambavyo program inaweza kufanya maamuzi kulingana na mashart fulani.ama namna ambavyo program inaweza ku run code zaii ya mara moja kulingana na mashart. Hapa tutazingumzia flow of control statement
Soma Zaidi...KOTLIN somo la 8: Jinsi ya kutumia when
Katika somo hili utakwenda kujifunza kuhusu when case na jinsi inavyofanya kazi kwenye Kotlin.
Soma Zaidi...Kotlin Somo la 28: Abstraction na Interfaces
Somo hili linaelezea dhana ya abstraction na interfaces katika Kotlin — namna zinavyosaidia kuficha undani wa utekelezaji na kuweka miongozo ya kazi. Tutafahamu tofauti kati ya abstract class na interface, na tutaandika mifano halisi ya kila moja.
Soma Zaidi...KOTLIN somo la 12: Jinsi ya kupata user input
Jinsi ya kuchukuwa user input kwenye Kotlin kwa ajili ya kuongeza user interaction kwenye program.
Soma Zaidi...KOTLIN somo la 11:Jinsi ya kutumia break na continue kwenye loop
Katika somo hili utakwenda kujifunza kuhusu break na continue kwenye Kotlin loop za for loop na while loop.
Soma Zaidi...KOTLIN somo la 13: Jinsi ya kuandika function na kuweka parameter
Katika somo hili utakwend akujifunza maana ya function, jinsi ya kuandika function na kuweka parameter kwenye function
Soma Zaidi...KOTLIN somo la 18: string na method zinazotumika kwenye list data type.
Katika somo hili tutajifunza method zinazofanya kazi kwenye list data type kwenye Kotlin.
Soma Zaidi...KOTLIN somo la 10: Jinsi ya kutumia while loop na do while loop
Katika somo hili utakwend akujifunza kuhusu while loop na do while loop zinavyofanya kazi katika 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...