Java Serializable和Parcelable詳解及實例代碼
對 Serializable和Parcelable理解
1、首先他們兩個接口都是為了實現(xiàn)對象的序列化,使之可以傳遞,所謂序列化就是將對象信息裝換成可以存儲的介質(zhì)的過程。
2、Serializable是jdk所提供的序列化接口,該接口存在于io包下,可想用于輸入輸出,使用非常簡單,只要讓你的類實現(xiàn)此接口就ok了;可以使用transient關(guān)鍵字修飾你不想序列化的屬性。
3、Parcelable是sdk所提供的序列化接口,使用較上者麻煩,實現(xiàn)此接口后,需要重寫writeToParcel方法,將需要序列化的屬性寫入Parcel中;
然后還需要CERATOR靜態(tài)成員屬相,以便從parcel中取出數(shù)據(jù)。如下
public static final Creator<Pen> CREATOR = new Creator<Pen>() {
@Override
public Pen createFromParcel(Parcel in) {
return new Pen(in);
}
@Override
public Pen[] newArray(int size) {
return new Pen[size];
}
};
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(Parcel dest, int flags) {
dest.writeString(color);
dest.writeInt(size);
}
4、兩種都是用于支持序列化、反序列化話操作,兩者最大的區(qū)別在于存儲媒介的不同,Serializable使用IO讀寫存儲在硬盤上,而Parcelable是直接在內(nèi)存中讀寫,很明顯內(nèi)存的讀寫速度通常大于IO讀寫,所以在Android中通常優(yōu)先選擇Parcelable。
通過此文希望能幫助有需要的小伙伴,徹底理解Java Serializable和Parcelable的知識,謝謝大家對本站的支持!
- java 中序列化NotSerializableException問題解決辦法
- java中Serializable接口作用詳解
- Serializable接口的作用_動力節(jié)點Java學(xué)院整理
- java 序列化對象 serializable 讀寫數(shù)據(jù)的實例
- Java動態(tài)獲取實現(xiàn)某個接口下所有的實現(xiàn)類對象集合
- 淺談java web中常用對象對應(yīng)的實例化接口
- 淺談java 面對對象(抽象 繼承 接口 多態(tài))
- Java多態(tài)和實現(xiàn)接口的類的對象賦值給接口引用的方法(推薦)
- Java對象Serializable接口實現(xiàn)詳解
相關(guān)文章
IntelliJ IDEA中如何調(diào)試Java Stream操作
這篇文章主要介紹了IntelliJ IDEA中如何優(yōu)雅的調(diào)試Java Stream操作,在強大的IDEA插件支持下,stream的調(diào)試其實也沒那么難了,下面就來學(xué)習(xí)一下在IDEA中如何調(diào)試stream操作吧2022-05-05
Spring Boot創(chuàng)建非可執(zhí)行jar包的實例教程
這篇文章主要介紹了Spring Boot創(chuàng)建非可執(zhí)行jar包的實例教程,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-02-02
SpringBoot使用hutool-captcha實現(xiàn)驗證碼生成與驗證
在springboot的登陸頁面中為了防止機器大規(guī)模注冊,機器暴力破解數(shù)據(jù)密碼等危害,需要驗證隨機生成的驗證碼,本文主要介紹了SpringBoot使用hutool-captcha實現(xiàn)驗證碼生成與驗證,感興趣的可以了解一下2023-12-12
java.lang.NumberFormatException異常解決方案詳解
這篇文章主要介紹了java.lang.NumberFormatException異常解決方案詳解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下2021-08-08
java基于netty NIO的簡單聊天室的實現(xiàn)
這篇文章主要介紹了java基于netty NIO的簡單聊天室的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07

