Sobes.tech
Junior — Middle

Можете ли објаснити концепт проширних функција у Јави?

sobes.tech АИ

Одговор од АИ

Funkcije proširenja u Kotlinu omogućavaju dodavanje novih funkcija postojećim klasama bez potrebe za nasleđivanjem ili izmenom izvornog koda klase.

Ovo se postiže pomoću posebne sintakse, gde je funkcija deklarisana van klase, ali sa tipom primaoca koji "proširuje" funkcionalnost.

Primer funkcije proširenja za klasu String:

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

fun main() {
    val word = "level"
    println(word.isPalindrome()) // Ispisaće: true
}

Na ovaj način, funkcije proširenja omogućavaju pisanje izražajnijeg i čitljivijeg koda, dodavanjem metoda klasama, čak i ako nemate pristup njihovom izvornom kodu.