Junior — Middle
L'objet compagnon est-il commun à toutes les instances créées de la classe?
sobes.tech IA
Réponse de l'IA
Oui, l'objet compagnon (companion object) en Kotlin est partagé par toutes les instances de la classe. C'est une sorte de singleton associé à la classe, et non à une instance spécifique.
L'objet compagnon permet de définir des fonctions et des propriétés qui peuvent être appelées sans créer une instance de la classe, similaire aux méthodes et champs statiques en Java.
Exemple:
class MyClass {
companion object {
val sharedValue = 42
fun printValue() {
println("Valeur partagée : $sharedValue")
}
}
}
fun main() {
println(MyClass.sharedValue) // 42
MyClass.printValue() // Valeur partagée : 42
}
Ici, sharedValue et printValue sont communs à toutes les instances de MyClass.