Sobes.tech
Junior — Middle

O objeto companheiro é comum a todas as instâncias criadas da classe?

sobes.tech IA

Resposta da IA

Sim, o objeto companheiro (companion object) em Kotlin é comum a todas as instâncias da classe. É uma espécie de singleton associado à classe, e não a uma instância específica.

O objeto companheiro permite definir funções e propriedades que podem ser chamadas sem criar uma instância da classe, semelhante aos métodos e campos estáticos em Java.

Exemplo:

class MyClass {
    companion object {
        val sharedValue = 42
        fun printValue() {
            println("Valor compartilhado: $sharedValue")
        }
    }
}

fun main() {
    println(MyClass.sharedValue) // 42
    MyClass.printValue()        // Valor compartilhado: 42
}

Aqui, sharedValue e printValue são comuns a todas as instâncias de MyClass.