Sobes.tech
Junior — Middle

El tudná magyarázni a Kotlin nyelvben az kiterjesztő függvények fogalmát?

sobes.tech MI

Válasz az MI-től

A Kotlin kiterjesztő függvényei lehetővé teszik, hogy új funkciókat adjunk meglévő osztályokhoz anélkül, hogy öröklődést vagy az osztály forráskódjának módosítását kellene alkalmazni.

Ezt egy speciális szintaxis segítségével érik el, ahol a függvény az osztályon kívül van deklarálva, de egy fogadó típus segítségével "kiterjeszti" a funkcionalitást.

Példa egy kiterjesztő függvényre a String osztályhoz:

fun String.isPalindrome(): Boolean {
    return this == this.reversed()
}

fun main() {
    val word = "level"
    println(word.isPalindrome()) // Kiírja: true
}

Így a kiterjesztő függvények lehetővé teszik, hogy kifejezőbb és könnyebben olvasható kódot írjunk, metódusokat adva hozzá az osztályokhoz, még akkor is, ha nincs hozzáférésünk a forráskódjukhoz.