Котлин функција продужења (са примерима)

Преглед садржаја

У овом чланку ћете научити да проширите класу новом функционалношћу помоћу функција проширења.

Претпоставимо да морате проширити класу новом функционалношћу. У већини програмских језика или изводите нову класу или користите неку врсту дизајнерског обрасца да бисте то урадили.

Међутим, у Колтину такође можете да користите функцију проширења да бисте проширили класу новом функционалношћу. У основи, функција проширења је функција члана класе која је дефинисана изван класе.

На пример, потребно је да користите методу класе Стринг која враћа нови низ са уклоњеним првим и последњим знаком; овај метод већ није доступан у Stringнастави. За постизање овог задатка можете користити функцију продужења.

Пример: Уклоните први и последњи знак низа

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

Када покренете програм, излаз ће бити:

 Први лик је: елло Еверион

Овде ()се Stringкласи додаје функција екстензије ремовеФирстЛастЦхар .

Назив класе је тип пријемника ( Stringкласа у нашем примеру). Кључна thisреч унутар функције проширења односи се на објекат примаоца.

Ако требате да интегришете Котлин на врху Јава пројекта, не морате да мењате цео код у Колтин. Само користите функције проширења за додавање функционалности.

То је речено, прилично је лако злоупотребити моћ продужних функција. Препоручујемо вам да погледате ове ресурсе да бисте сазнали када користити екстензије, а када не:

  • Да ли су методе продужења и својства проширења лоши?
  • Како злоупотребити функције продужења Котлина?

Занимљиви Чланци...