Kotlin-laajennustoiminto (esimerkkejä)

Sisällysluettelo

Tässä artikkelissa opit laajentamaan luokkaa uusilla toiminnoilla laajennustoimintojen avulla.

Oletetaan, että sinun on laajennettava luokkaa uusilla toiminnoilla. Useimmissa ohjelmointikielissä joko johdetaan uusi luokka tai käytetään jonkinlaista suunnittelumallia tähän.

Koltinissa voit kuitenkin käyttää laajennustoimintoa myös luokan laajentamiseen uusilla toiminnoilla. Periaatteessa laajennusfunktio on luokan ulkopuolella määritelty luokan jäsenfunktio.

Esimerkiksi String-luokassa on käytettävä menetelmää, joka palauttaa uuden merkkijonon, jonka ensimmäinen ja viimeinen merkki on poistettu. tätä menetelmää ei ole jo saatavilla Stringluokassa. Voit käyttää laajennustoimintoa tämän tehtävän suorittamiseen.

Esimerkki: Poista merkkijono ensimmäinen ja viimeinen merkki

 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") )

Kun suoritat ohjelmaa, tulos on:

 Ensimmäinen merkki on: ello Everyon

Täällä luokkaan ()lisätään laajennustoiminto removeFirstLastChar String.

Luokan nimi on vastaanottimen tyyppi ( Stringesimerkkimme luokka). thisLaajennusfunktion sisällä oleva avainsana viittaa vastaanottajaobjektiin.

Jos sinun on integroitava Kotlin Java-projektin päälle, sinun ei tarvitse muokata koko koodia Koltiniksi. Käytä vain laajennustoimintoja lisätäksesi toimintoja.

Tästä huolimatta on melko helppoa käyttää väärin laajennustoimintoja. Suosittelemme, että tarkistat nämä resurssit saadaksesi tietää, milloin laajennuksia käytetään ja milloin ei:

  • Ovatko laajennusmenetelmät ja laajennuksen ominaisuudet huonoja?
  • Kuinka käyttää väärin Kotlin-laajennustoimintoja?

Mielenkiintoisia artikkeleita...