Sobes.tech
Junior — Middle

Můžete vysvětlit koncept rozšiřujících funkcí v jazyce Kotlin?

sobes.tech AI

Odpověď od AI

Rozšiřující funkce v Kotlinu umožňují přidávat nové funkce ke stávajícím třídám bez nutnosti dědičnosti nebo změny zdrojového kódu třídy.

Toho je dosaženo pomocí speciální syntaxe, kdy je funkce deklarována mimo třídu, ale s typem příjemce, který "rozšiřuje" funkčnost.

Příklad rozšiřující funkce pro třídu String:

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

fun main() {
    val word = "level"
    println(word.isPalindrome()) // Vypíše: true
}

Tímto způsobem rozšiřující funkce umožňují psát výstižnější a čitelnější kód, přidáváním metod ke třídám, i když nemáte přístup ke zdrojovému kódu.