Sobes.tech
Middle

Qu'est-ce que les 'expressions d'objet' et les 'déclarations d'objet' en Kotlin?

sobes.tech IA

Réponse de l'IA

Les expressions d'objets (objets anonymes) sont utilisées pour créer des objets de classes anonymes. Elles sont utiles pour implémenter des interfaces à usage unique ou hériter de classes en une seule instance. Syntaxe object : <type(s)>.

Les déclarations d'objets créent un singleton. C'est une classe avec une seule instance, accessible globalement par son nom. Syntaxe object <nom>.

Tableau comparatif :

Caractéristique Expressions d'objets Déclarations d'objets
But Créer un objet anonyme Créer un singleton
Utilisation Locale, dans des expressions ou fonctions Accessible publiquement, par nom d'objet
Création d'instances À chaque utilisation de l'expression Une seule instance lors du premier accès
Nomination Anonyme Nommé
Application Écouteurs d'événements à usage unique, adaptateurs Utilitaires, configurations, stockage d'état

Exemple d'expression d'objet :

// Création d'un gestionnaire de clic "à la volée"
button.setOnClickListener(object : View.OnClickListener {
    override fun onClick(v: View?) {
        // Action lors du clic
    }
})

Exemple de déclaration d'objet :

// Déclaration d'un singleton pour la journalisation
object Logger {
    fun log(message: String) {
        println(message)
    }
}

// Utilisation du singleton
fun processData(data: String) {
    Logger.log("Traitement des données...")
    // Traitement des données
}