摘要:序列化提供的一種對(duì)象序列化的機(jī)制,在該機(jī)制中,一個(gè)對(duì)象可以被表示為一個(gè)字節(jié)序列,該字節(jié)序列包括對(duì)象的數(shù)據(jù)有關(guān)對(duì)象的類型的信息和存儲(chǔ)在對(duì)象中的數(shù)據(jù)類型。類和是高程次的數(shù)據(jù)流,他們包含序列化和反序列化對(duì)象的方法。
序列化:Java提供的一種對(duì)象序列化的機(jī)制,在該機(jī)制中,一個(gè)對(duì)象可以被表示為一個(gè)字節(jié)序列,該字節(jié)序列包括對(duì)象的數(shù)據(jù)、有關(guān)對(duì)象的類型的信息、和存儲(chǔ)在對(duì)象中的數(shù)據(jù)類型。
反序列化:將序列化對(duì)象寫(xiě)入文件之后,可以從文件中讀取出來(lái),并且對(duì)它進(jìn)行反序列化,也就是說(shuō),對(duì)象的類型信息、對(duì)象的數(shù)據(jù)、還有對(duì)象中的數(shù)據(jù)類型可以用來(lái)在內(nèi)存中新建對(duì)象。
序列化與反序列化的過(guò)程都是Java虛擬機(jī)獨(dú)立的,也就是說(shuō),在一個(gè)平臺(tái)上序列化的對(duì)象可以在另一個(gè)完全不同的平臺(tái)上反序列化該對(duì)象。類ObjectInputStream和ObjectOutputStream是高程次的數(shù)據(jù)流,他們包含序列化和反序列化對(duì)象的方法。
一個(gè)簡(jiǎn)單的流程
一個(gè)實(shí)現(xiàn)Serializable接口的JavaBean
場(chǎng)景實(shí)現(xiàn)
運(yùn)行后的結(jié)果
生成的文件
對(duì)基本數(shù)據(jù)類型的支持
運(yùn)行結(jié)果
持久化的數(shù)據(jù)
“序列化不會(huì)自動(dòng)保存static和transient變量“,如果想要對(duì)其支持,必須復(fù)寫(xiě)writeObject()和readObject()的方法。
一個(gè)實(shí)現(xiàn)Serializable接口的JavaBean
場(chǎng)景實(shí)現(xiàn)
運(yùn)行結(jié)果
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/72007.html
摘要:與的作用是對(duì)基本數(shù)據(jù)和對(duì)象進(jìn)行序列化操作進(jìn)行支持。如果檢測(cè)到反序列化的類的和對(duì)象二進(jìn)制流的不同,則會(huì)拋出異常。 ObjectInputStream與ObjectOutputStream的作用是:對(duì)基本數(shù)據(jù)和對(duì)象進(jìn)行序列化操作進(jìn)行支持。其中ObjectInputStream對(duì)象提供對(duì)基本數(shù)據(jù)和對(duì)象對(duì)持久存儲(chǔ),當(dāng)我們需要讀取這些存儲(chǔ)這些基本數(shù)據(jù)或?qū)ο髸r(shí),可以創(chuàng)建文件輸入流對(duì)應(yīng)的Object...
摘要:直接繼承與,實(shí)現(xiàn)了接口和接口,實(shí)現(xiàn)接口,意味著對(duì)象支持序列化操作,而實(shí)現(xiàn)接口,意味著之間可以比較大小。刪除此抽象路徑名表示的文件或目錄。標(biāo)記此抽象路徑名指定的文件或目錄,從而只能對(duì)其進(jìn)行讀操作。 showImg(https://segmentfault.com/img/bVbi3ls?w=2048&h=164);1 File直接繼承與Object,實(shí)現(xiàn)了Serializable接口和C...
摘要:是從文件系統(tǒng)中的文件中獲取字節(jié),至于什么文件,取決于主機(jī)環(huán)境,用于讀取原始字節(jié)流,如圖像數(shù)據(jù),假如想要讀取字符類型流,請(qǐng)使用。跳過(guò)個(gè)字節(jié)本地方法關(guān)閉文件輸入流 FileInputStream是從文件系統(tǒng)中的文件中獲取字節(jié),至于什么文件,取決于主機(jī)環(huán)境,F(xiàn)ileInputStream用于讀取原始字節(jié)流,如圖像數(shù)據(jù),假如想要讀取字符類型流,請(qǐng)使用FileReader。 ...
摘要:是繼承與的子類常用屬性文件描述符是否在文件尾部開(kāi)始追加寫(xiě)入用于讀寫(xiě)映射操作文件的通道文件的路徑一個(gè)關(guān)閉鎖,只在方法中使用,確保多線程同步調(diào)用構(gòu)造函數(shù)創(chuàng)建一個(gè)向指定對(duì)應(yīng)的文件中寫(xiě)入數(shù)據(jù)的文件輸出流創(chuàng)建一個(gè)向指定對(duì)應(yīng)的文件中寫(xiě)入數(shù)據(jù)的文件輸出流 FileOutputStream 是繼承與OutputStream的子類 1 常用屬性 private final FileDescriptor...
摘要:序列化反序列化主要體現(xiàn)在程序這個(gè)過(guò)程中,包括網(wǎng)絡(luò)和磁盤(pán)。如果是開(kāi)發(fā)應(yīng)用,一般這兩個(gè)注解對(duì)應(yīng)的就是序列化和反序列化的操作。協(xié)議的處理過(guò)程,字節(jié)流內(nèi)部對(duì)象,就涉及這兩種序列化。進(jìn)行第二步操作,也就是序列化和反序列化的核心是。 以下內(nèi)容,如有問(wèn)題,煩請(qǐng)指出,謝謝! 對(duì)象的序列化/反序列化大家應(yīng)該都比較熟悉:序列化就是將object轉(zhuǎn)化為可以傳輸?shù)亩M(jìn)制,反序列化就是將二進(jìn)制轉(zhuǎn)化為程序內(nèi)部的...
閱讀 1255·2021-09-01 10:30
閱讀 2133·2021-07-23 10:38
閱讀 907·2019-08-29 15:06
閱讀 3161·2019-08-29 13:53
閱讀 3284·2019-08-26 11:54
閱讀 1837·2019-08-26 11:38
閱讀 2379·2019-08-26 10:29
閱讀 3134·2019-08-23 18:15