Junior — Middle
Como são implementadas e utilizadas as funções de extensão em Kotlin?
sobes.tech IA
Resposta da IA
No Kotlin, as funções de extensão permitem adicionar novas funções a classes existentes sem a necessidade de herança ou modificação do código fonte da classe. Elas são declaradas fora da classe usando a sintaxe fun ReceiverType.nomeDaFuncao(). Dentro da função de extensão, this refere-se ao objeto receptor.
Exemplo:
fun String.lastChar(): Char = this[this.length - 1]
val c = "Kotlin".lastChar() // 'n'
As funções de extensão são úteis para adicionar utilitários e melhorar a legibilidade do código, especialmente ao trabalhar com classes de bibliotecas. Elas são chamadas como métodos normais do objeto, mas na verdade são funções estáticas com o primeiro parâmetro sendo o objeto receptor.