Kotlin-utvidelsesfunksjon (med eksempler)

Innholdsfortegnelse

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?

Interessante artikler...