English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Funciones de extensión en Kotlin

Kotlin Orientado a Objetos (OOP)

En este artículo, aprenderá cómo usar funciones de extensión para extender clases con nuevas funciones.Supongamos que necesita extender una clase con nuevas funciones. En la mayoría de los lenguajes de programación, o bienHeredar una nueva clase,

O utilice algún patrón de diseño para realizar esta operación.

Pero en Kotlin, también puede usar funciones de extensión para extender clases con nuevas funciones. Básicamente, las funciones de extensión son funciones miembro de clase definidas fuera de la clase.Por ejemplo, necesitaráClase String

Ejemplo: Eliminar el primer y el último carácter de una cadena. Este método no existe en la clase String. Puede usar una extensión de función para completar esta tarea.

fun String.removeFirstLastChar(): String = this.substring(1, this.length - 1)
fun main(args: Array<String>) {
    val myString = "Hello Everyone"
    val result = myString.removeFirstLastChar()
    println("El resultado de la salida: ", $result)
}

La salida cuando se ejecuta el programa es:

El resultado de la salida: ello Everyon

Aquí, la función de extensión removeFirstLastChar () se agrega a la clase String.

El nombre de la clase es el tipo receptor (en nuestro ejemplo, la clase String). La palabra clave this en la función de extensión se refiere al objeto receptor.

Si necesita integrar Kotlin en un proyecto Java, no es necesario modificar todo el código a Kotlin. Simplemente use funciones de extensión para agregar funcionalidades.