English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Neste artigo, você aprenderá como usar funções de extensão para estender classes com novas funcionalidades.
Supondo que você precise estender uma classe com novas funcionalidades. Em muitos linguagens de programação, você podeDerive uma nova classe,ou usar algum padrão de design para realizar essa operação.
Mas, no Kotlin, você também pode usar funções de extensão para estender classes com novas funcionalidades. Basicamente, as funções de extensão são membros de função definidos fora da classe.
Por exemplo, você precisa deClasse StringUtilize um método que retorne uma nova string sem o primeiro e o último caractere. Este método não existe na classe String. Você pode usar uma função de extensão para completar esta tarefa.
fun String.removeFirstLastChar(): String = this.substring(1, this.length - 1) fun main(args: Array<String>) { val myString = "Hello Everyone" val result = myString.removeFirstLastChar() println("Resultado da Saída: $result") }
Quando o programa é executado, a saída é:
O resultado da saída: ello Everyon
Aqui, a função de extensão removeFirstLastChar () é adicionada à classe String.
O nome da classe é o tipo receptor (no nosso exemplo, a classe String). A palavra-chave this na função de extensão referencia o objeto receptor.
Se precisar integrar o Kotlin a um projeto Java, não é necessário modificar todo o código para Kotlin. Basta usar funções de extensão para adicionar funcionalidades.