Источник: Nuances of Programming Курс SkillFactory Android-разработчик. Ваш прямой путь к созданию мобильных приложений на Android с нуля. Введение Разберемся, в чем основное различие между вложенным и внутренним классами. В Kotlin класс может объявляться внутри другого класса, причем двумя способами. 1. Вложенный класс Созданием одного класса внутри другого с помощью ключевого слова class: class Outer {
val companyName: String = "Huawei"
private val companySecret: String = "Secret"
fun getSomething(): String = ""
class NestedClass {
fun printSomething() {
println("From Nested Class")
}
}
}
fun main() {
println(Outer.NestedClass())
} Обращаясь в функции main к внутреннему классу, создавать объект класса Outer не пришлось. Дело в том, что вложенные классы создаются статически в фоновом режиме. Поэтому для доступа к ним объекты не нужны. Это подтверждается точным эквивалентом кода на Java при нажатии show Kotlin byt
