Какие знаешь случаи использования ключевого слова object

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

Ответ

В Kotlin object используется для:

  1. Singleton – создание объекта в единственном экземпляре:
object DatabaseHelper { 
    fun queryData() { ... } 
}  
// Использование: DatabaseHelper.queryData()  
  1. Companion Object – замена статических методов:
class MyClass {  
    companion object {  
        const val TAG = "MyClass"  
    }  
}  
// Доступ: MyClass.TAG  
  1. Анонимные объекты (аналог Java анонимных классов):
view.setOnClickListener(object : View.OnClickListener {  
    override fun onClick(v: View?) { ... }  
})  
  1. Object Expressions – создание объекта "на лету" без объявления класса.