Kotlin Somo la 27: Polymorphism

Kotlin Somo la 27: Polymorphism

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.

? Utangulizi

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.


 

? 1. Maana ya Polymorphism

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:


? 2. Method Overriding (Run-time Polymorphism)

Ni pale ambapo subclass inabadilisha tabia ya method iliyo katika superclass kwa kutumia override.

Mfano:

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 – inapokea Mnyama, lakini anapotumwa Mbwa au Paka, tabia hubadilika kulingana na override. Hii ndiyo polymorphism.


? 3. Method Overloading (Compile-time Polymorphism)

Ni pale ambapo method moja...

Ingia sasa ili uweze kusoma makala hii yote.

Zoezi la Maswali

Nyuma Endelea


Umeionaje Makala hii.. ?

       
Author: Rajabu Rajabu
Tarehe: 2025-07-09 16:51:35 Topic: Kotlin Main: Masomo File: Download PDF Views: 874

Share On:

Share follows: 0 | Unique share links followed: 0
Sponsored links
👉1 Dua za Mitume na Manabii     👉2 Sira ya Mtume Muhammad (s.a.w)     👉3 Simulizi za Hadithi Audio     👉4 Kitau cha Fiqh     👉5 web hosting     👉6 kitabu cha Simulizi    

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 19: method na properties zinazotumika kwenye set

Katika somo hili tutakwenda kujifunza kuhusu set data type pamoja na method ambazo hufanya kazi kwenye set.

Soma Zaidi...
Kotlin somo la 23: Utofauti wa package na library

Katika somo hili utakwenda kujifunza tofauti wa library na package

Soma Zaidi...
HOTLIN somo la 9: Jinsi ya kutumia for loop

Katika somo hli utakwend akujifunza kuhusu loop kwenye kOTLIN. Loop zimegawanyika katika makundi mnne ambayo ni for loop, while loop, for in loop na do while loop.

Soma Zaidi...
KOTLIN somo la 14: Aina za function kwenye Kotlin

Katika somo hili tutakwenda kuingia ndani zaidi kwenye somo la function. Hapa tutakwenda kuona aina za function.

Soma Zaidi...
Kotlin somo la 22: Package kenye kotlin

Katika somo hili utakwend akujifunza kuhusu nadharia ya package, kazi zake, aina zake na jinsi zinavyotumika

Soma Zaidi...