Android-da obyektlərin ötürülməsi zamanı Serializable və Parcelable interfeysləri arasındakı fərq nədir?
sobes.tech Süni İntellekt
AI-dan cavab
Serializable və Parcelable Android-da obyektlərin seriyalash uchun interfeyslərdir, amma onlar fərqli xüsusiyyətlərə malikdir:
-
Serializable — Java üçün standart interfeysdir. İstifadəsi asandır (yalnız interfeysi həyata keçirmək kifayətdir), amma daha yavaş işləyir və serializasiya zamanı daha çox əlavə yük yaradır.
-
Parcelable — Android-ə xas interfeysdir və məlumatların yazılması və oxunması üçün metodların əl ilə həyata keçirilməsini tələb edir. O, çox daha sürətli və daha səmərəlidir, bu da Android komponentləri arasında obyektlərin ötürülməsi üçün vacibdir (məsələn,
Intentvə yaBundlevasitəsilə).
Parcelable istifadə nümunəsi:
public class User implements Parcelable {
private String name;
private int age;
protected User(Parcel in) {
name = in.readString();
age = in.readInt();
}
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];
}
};
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(Parcel dest, int flags) {
dest.writeString(name);
dest.writeInt(age);
}
}
Bu səbəbdən, Android-da obyektləri ötürmək üçün Parcelable istifadə etmək tövsiyə olunur, çünki onun performansı daha yüksəkdir.