Junior — Middle
თქვენი გამოცდილების რა კლასები ან ობიექტები შეუძლიათ შეინახონ თავიანთი მდგომარეობა ბაიტების სერიად შემდეგი აღდგენისათვის?
sobes.tech AI
პასუხი AI-სგან
Android-да, օբյեկտների վիճակը պահպանելու և վերականգնելու համար հաճախ օգտագործվող մեխանիզմներն են հետևյալները:
-
Parcelable: ինտերֆեյս, որը թույլ է տալիս օբյեկտներին սերիալիզացնել բայթների հաջորդականության (Parcel) մեջ և վերականգնել դրանցից։ Օգտագործվում է տվյալների փոխանցման համար կոմպոնենտների միջև (օրինակ՝ Activity-ների միջև):
-
Serializable: Java-ի ստանդարտ ինտերֆեյս, որը թույլ է տալիս օբյեկտները սերիալիզացնել։ Ավելի քիչ արդյունավետ է, քան Parcelable-ը, բայց ավելի հեշտ է օգտագործել:
-
Bundle: կոնտեյներ, որը պահում է բանալին-արժեք զույգեր, և կարող է պարունակել օբյեկտներ, որոնք իրականացնում են Parcelable կամ Serializable:
Parcelable-ի օրինակ՝
public class User implements Parcelable {
private String name;
private int age;
protected User(Parcel in) {
name = in.readString();
age = in.readInt();
}
@Override
public void writeToParcel(Parcel dest, int flags) {
dest.writeString(name);
dest.writeInt(age);
}
@Override
public int describeContents() {
return 0;
}
public static final Creator<User> CREATOR = new Creator<User>() {
@Override
public User createFromParcel(Parcel in) {
return new User(in);
}
@Override
public User[] newArray(int size) {
return new User[size];
}
};
}