Junior
O que é a expressão 'object' em Kotlin e como pode ser usada?
sobes.tech IA
Resposta da IA
object em Kotlin é usado para criar singletons, objetos anónimos e objetos companheiros.
Singletons:
Criação de uma única instância de uma classe:
object DatabaseManager {
fun connect() {
// Lógica de conexão
}
}
Uso:
DatabaseManager.connect()
Objetos anónimos:
Criação de um objeto "em tempo de execução" que pode implementar interfaces ou herdar de classes. Frequentemente usado para ouvintes de eventos.
interface ClickListener {
fun onClick()
}
fun setupButton(listener: ClickListener) {
// Configuração do botão com o listener
}
fun main() {
setupButton(object : ClickListener {
override fun onClick() {
println("Botão clicado!")
}
})
}
Objetos anónimos têm acesso às variáveis do escopo envolvente se forem finais (ou efetivamente finais em Kotlin).
Objetos companheiros (companion object):
Análogo aos membros estáticos em Java. Declarado dentro de uma classe.
class MyClass {
companion object {
const val TAG = "MyClass"
fun create(): MyClass {
return MyClass()
}
}
}
Uso:
println(MyClass.TAG)
val instance = MyClass.create()
Objetos companheiros podem ter nomes e até implementar interfaces.