Во что Kotlin object компилируется в Java

«Во что Kotlin object компилируется в Java» — вопрос из категории Kotlin, который задают на 23% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Kotlin object компилируется в Java как синглтон-класс с приватным конструктором и статическим полем INSTANCE для доступа к единственному экземпляру.

Пример Kotlin:

object Singleton {
    fun doSomething() {}
}

Эквивалент в Java:

public final class Singleton {
    public static final Singleton INSTANCE = new Singleton();
    private Singleton() {}
    public void doSomething() {}
}

Для object с интерфейсом/суперклассом генерируется анонимный класс.