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: 898

Share On:

Share follows: 0 | Unique share links followed: 0
Sponsored links
👉1 kitabu cha Simulizi     👉2 Kitau cha Fiqh     👉3 Tafasiri ya Riyadh Swalihina     👉4 web hosting     👉5 Bongolite - Game zone - Play free game     👉6 Dua za Mitume na Manabii    

Post zinazofanana:

KOTLIN somo la 3: Jinsi ya kuandika variable

Katika somo hili utakwend akujifunza jinsi ya kuandika variable kweye Kotlin. pia utakwenda kujifunza kuhusu concatnation na interpolation

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 20: method na properties za map

Katika somo hili tutakwenda kujifunza kuhusu method ambazo hutumika kwenye map data type

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 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 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...