#5 Уроки Kotlin. Введение: вложенные классы

Уроки Kotlin 5

В этом уроке мы рассмотрим вложенные классы.

Вложенные классы

Классы могут быть вложенными один в другой:

class Outer {
  private val bar: Int = 1
  class Nested {
    fun foo() = 2
  }
}

val demo = Outer.Nested().foo() // == 2

Внутренние классы

Вложенный класс может быть помечен как inner для доступа к элементам внешнего класса. Внутренние классы содержат ссылку  на объект внешнего класса:

class Outer {
  private val bar: Int = 1
  inner class Inner {
    fun foo() = bar
  }
}

val demo = Outer().Inner().foo() // == 1

Из примера видно, что класс Inner имеет доступ к переменным класса Outer.

Источник: Nested Classes

Комментарии:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *