Sobes.tech
Junior

გთხოვთ, ჩამოთვალოთ Android განვითარების მარკერები და ინტერფეისები.

sobes.tech AI

პასუხი AI-სგან

მარკერი ინტერფეისები (Marker Interfaces) Android-ში — ეს მეთოდების გარეშე ინტერფეისებია, რომლებიც გამოიყენება კლასის ნიშნულისთვის, რათა კომპილატორს ან შესრულების გარემოს მიაწოდოს ინფორმაცია ობიექტის ტიპის შესახებ.

მაგალითები:

  • Serializable: მიუთითებს, რომ ობიექტი შეიძლება სერილიზდეს (შენახულ იქნას ბაიტების ნაკადში) შემდეგი დესერილიზაციისთვის. გამოიყენება მონაცემების გადაცემისთვის კომპონენტებს შორის, მდგომარეობის შენახვისთვის.
  • Parcelable: Android-ისთვის უფრო ეფექტური ანალოგი Serializable. საშუალებას აძლევს ობიექტებს "პაკეტში" ჩასმას Parcel-ში სწრაფი გადაცემისთვის. მოითხოვს writeToParcel და CREATOR მეთოდების რეალიზაციას. გამოიყენება Activity, Service, BroadcastReceiver შორის მონაცემების გადაცემისთვის.
  • Cloneable: მიუთითებს, რომ ობიექტი შეიძლება კლონირდეს Object.clone() მეთოდით.

Android-ის ინტერფეისები გამოიყენება კონტრაქტების განსაზღვრაში, პოლიმორფიზმის უზრუნველყოფაში და უკუკავშირის გამოძახილებში.

მაგალითები:

  • Listeners (საგმოსმენო სმენისერები):
    // კლიკის მოსმენისერი მაგალითი
    View.OnClickListener
    
  • Callbacks (უკუკავშირის გამოძახილები):
    // შედეგის დაბრუნების უკუკავშირის მაგალითი
    retrofit2.Callback
    
  • Adapters (ადაპტერები):
    // სიის ადაპტერის მაგალითი
    androidx.recyclerview.widget.RecyclerView.Adapter
    
  • Lifecycle Observers (ციკლის მონიტორები):
    // ციკლის მონიტორის მაგალითი
    androidx.lifecycle.LifecycleObserver
    
  • Runnable: გამოიყენება კოდის განსაზღვრაში, რომელიც შესრულდება ცალკე ნაკადში.
    java.lang.Runnable
    
  • Comparable/Comparator: ობიექტების სორტირების წესის განსაზღვრა.
    java.lang.Comparable
    java.util.Comparator
    
  • ServiceConnection: დაკავშირებული სერვისთან ურთიერთობისთვის.
    android.content.ServiceConnection
    
  • Binder: ბაზის კლასი დისტანციური გამოძახილებისთვის (IPC).
    android.os.Binder