Что такое companion object
companion object
- это специальный объект в Kotlin, который позволяет создавать статические члены (методы, свойства) внутри класса. В отличие от обычных объектов, companion object
связан с классом, в котором он объявлен, и может быть использован для организации статических членов и функций, которые принадлежат классу, но не привязаны к конкретному экземпляру этого класса.
Основные особенности companion object
:
Статические члены: Внутри companion object
можно определять статические методы, свойства и другие члены класса, которые могут быть вызваны без необходимости создавать экземпляр класса.
Привязка к классу: companion object
привязан к классу, в котором он определен, и может обращаться к его членам без явного указания имени класса.
Использование имени класса: Для доступа к членам companion object
извне класса, его можно вызвать по имени класса, например: MyClass.Companion.myMethod()
или просто MyClass.myMethod()
.
Использование без имени класса: Члены companion object
могут быть использованы внутри самого класса без явного указания имени класса.