Junior — Middle
Kun je uitleggen wat een companion-object in Kotlin is en waar het voor dient?
sobes.tech AI
Antwoord van AI
Объект-компаньон (companion object) в Kotlin — это специальный объект, объявленный внутри класса с ключевым словом companion. Он позволяет создавать члены класса, которые ведут себя как статические (static) в других языках, но при этом остаются объектами.
Назначение:
- Хранить фабричные методы (например,
create()), константы и утилитарные функции, связанные с классом. - Обеспечивать доступ к членам без создания экземпляра класса.
Пример:
class MyClass {
companion object {
const val CONSTANT = "value"
fun create(): MyClass = MyClass()
}
}
fun main() {
val instance = MyClass.create()
println(MyClass.CONSTANT)
}
Таким образом, объект-компаньон объединяет преимущества статических членов и объектно-ориентированного подхода.