Функция за удължаване на Kotlin (с примери)

Съдържание

В тази статия ще се научите да разширявате клас с нова функционалност, използвайки функции за разширение.

Да предположим, че трябва да разширите клас с нова функционалност. В повечето езици за програмиране или извличате нов клас, или използвате някакъв модел на дизайн, за да направите това.

Въпреки това, в Koltin можете също да използвате функция за разширение, за да разширите клас с нова функционалност. По принцип функцията за разширение е член-функция на клас, който е дефиниран извън класа.

Например трябва да използвате метод за клас String, който връща нов низ с премахнат първи и последен символ; този метод вече не е наличен в 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") )

Когато стартирате програмата, изходът ще бъде:

 Първият герой е: ello Everyon

Тук ()към Stringкласа се добавя функция за разширение removeFirstLastChar .

Името на класа е типът на приемника ( Stringклас в нашия пример). В thisключова дума вътре функцията за разширение се отнася обекта приемник.

Ако трябва да интегрирате Kotlin в горната част на Java проекта, не е необходимо да променяте целия код в Koltin. Просто използвайте функции за разширение, за да добавите функционалности.

Като се има предвид това, е доста лесно да се злоупотребява със силата на функциите за разширение. Препоръчваме ви да проверите тези ресурси, за да научите кога да използвате разширения и кога да не:

  • Лоши ли са методите за удължаване и свойствата на разширението?
  • Как да злоупотребявам с разширенията на Kotlin?

Интересни статии...