Sobes.tech
Junior

Наведите маркере и интерфејсе у Android развоју.

sobes.tech АИ

Одговор од АИ

Marker interfejsi (Marker Interfaces) u Androidu su interfejsi bez metoda, koji se koriste za označavanje klase, pružajući kompajleru ili okruženju za izvršavanje informacije o tipu objekta.

Primeri:

  • Serializable: Ukazuje da objekat može biti serijalizovan (sačuvan u tok bajtova) za kasniju deserializaciju. Koristi se za prenos podataka između komponenti, čuvanje stanja.
  • Parcelable: Efikasnija verzija za Android od Serializable. Omogućava da objekti budu "pakovani" u Parcel za brzu transmisiju. Zahteva implementaciju metoda writeToParcel i kreiranje CREATOR. Koristi se za prenos podataka između Activity, Service, BroadcastReceiver.
  • Cloneable: Ukazuje da objekat može biti kloniran metodom Object.clone().

Interfejsi u Androidu se koriste za definisanje ugovora, obezbeđivanje polimorfizma i povratnih poziva.

Primeri:

  • Listeners (slušaoci događaja):
    // Primer slušaoca klika
    View.OnClickListener
    
  • Callbacks (povratni pozivi):
    // Primer povratnog poziva za rezultat zahteva
    retrofit2.Callback
    
  • Adapters (adapteri):
    // Primer adaptera za listu
    androidx.recyclerview.widget.RecyclerView.Adapter
    
  • Lifecycle Observers (posmatrači životnog ciklusa):
    // Primer posmatrača životnog ciklusa
    androidx.lifecycle.LifecycleObserver
    
  • Runnable: Koristi se za definisanje koda koji se izvršava u posebnom thread-u.
    java.lang.Runnable
    
  • Comparable/Comparator: Za definisanje reda sortiranja objekata.
    java.lang.Comparable
    java.util.Comparator
    
  • ServiceConnection: Za interakciju sa povezanim servisom.
    android.content.ServiceConnection
    
  • Binder: Osnovna klasa za implementaciju udaljenih poziva procedura (IPC).
    android.os.Binder