I denne artikkelen vil du lære å utvide en klasse med ny funksjonalitet ved hjelp av utvidelsesfunksjoner.
Anta at du må utvide en klasse med ny funksjonalitet. I de fleste programmeringsspråk kan du enten utlede en ny klasse eller bruke et slags designmønster for å gjøre dette.
I Koltin kan du imidlertid også bruke utvidelsesfunksjon for å utvide en klasse med ny funksjonalitet. I utgangspunktet er en utvidelsesfunksjon en medlemsfunksjon i en klasse som er definert utenfor klassen.
For eksempel må du bruke en metode til String-klassen som returnerer en ny streng med første og siste tegn fjernet; denne metoden er ikke allerede tilgjengelig i Stringklassen. Du kan bruke utvidelsesfunksjonen for å utføre denne oppgaven.
Eksempel: Fjern første og siste karakter av streng
fun String.removeFirstLastChar(): String = this.substring(1, this.length - 1) fun main(args: Array) ( val myString= "Hello Everyone" val result = myString.removeFirstLastChar() println("First character is: $result") )
Når du kjører programmet, vil utdataene være:
Første karakter er: hallo Everyon
Her ()legges en utvidelsesfunksjon removeFirstLastChar til i Stringklassen.
Klassenavnet er mottakertypen ( Stringklasse i vårt eksempel). Den thisordet inne i forlengelsesfunksjon refererer mottakeren objektet.

Hvis du trenger å integrere Kotlin på toppen av Java-prosjektet, trenger du ikke endre hele koden til Koltin. Bare bruk utvidelsesfunksjoner for å legge til funksjoner.
Når det er sagt, er det ganske enkelt å misbruke makten til utvidelsesfunksjoner. Vi anbefaler deg å sjekke disse ressursene for å lære om når du skal bruke utvidelser og når du ikke skal:
- Er utvidelsesmetoder og utvidelsesegenskaper dårlige?
- Hvordan misbruke Kotlin-utvidelsesfunksjoner?








