Sobes.tech
Junior

Énumérez les marqueurs et les interfaces dans le développement Android.

sobes.tech IA

Réponse de l'IA

Les interfaces de marqueur (Marker Interfaces) en Android sont des interfaces sans méthodes, utilisées pour marquer une classe, fournissant au compilateur ou à l'environnement d'exécution des informations sur le type de l'objet.

Exemples :

  • Serializable : Indique qu'un objet peut être sérialisé (enregistré dans un flux de bytes) pour une désérialisation ultérieure. Utilisé pour transférer des données entre composants, sauvegarder l'état.
  • Parcelable : Version plus efficace pour Android de Serializable. Permet aux objets d'être "emballés" dans Parcel pour un transfert rapide. Nécessite l'implémentation des méthodes writeToParcel et la création d'un CREATOR. Utilisé pour transférer des données entre Activity, Service, BroadcastReceiver.
  • Cloneable : Indique qu'un objet peut être cloné via la méthode Object.clone().

Les interfaces en Android sont utilisées pour définir des contrats, assurer le polymorphisme et les rappels.

Exemples :

  • Listeners (écouteurs d'événements) :
    // Exemple d'écouteur de clic
    View.OnClickListener
    
  • Callbacks (retours d'appel) :
    // Exemple de rappel pour le résultat d'une requête
    retrofit2.Callback
    
  • Adapters (adaptateurs) :
    // Exemple d'adaptateur pour une liste
    androidx.recyclerview.widget.RecyclerView.Adapter
    
  • Lifecycle Observers (observateurs du cycle de vie) :
    // Exemple d'observateur du cycle de vie
    androidx.lifecycle.LifecycleObserver
    
  • Runnable : Utilisé pour définir du code qui s'exécute dans un thread séparé.
    java.lang.Runnable
    
  • Comparable/Comparator : Pour définir l'ordre de tri des objets.
    java.lang.Comparable
    java.util.Comparator
    
  • ServiceConnection : Pour interagir avec un service lié.
    android.content.ServiceConnection
    
  • Binder : Classe de base pour implémenter des appels de procédure distants (IPC).
    android.os.Binder