點(diǎn)擊查看:2015計(jì)算機(jī)等級考試二級Java入門教程章節(jié)匯總
點(diǎn)擊查看:2015計(jì)算機(jī)等級考試二級Java入門教程第九章匯總
9.6 在文件中保存對象
在對象串行化過程中異常的拋出
如果出錯(cuò),一個(gè)對象的構(gòu)造函數(shù)可以拋出一個(gè)IOException異常。
這里的前面兩個(gè)異常類是ObjectStreamException的子類,它本身是IOException的一個(gè)子類。如果你在不希望對象串行化過程中分別捕獲各個(gè)異常,你可以在你的try塊中,添加一catch塊,里面放入管理他們所有的異常的代碼,值是你通常希望在知道如果你的程序運(yùn)行失敗是因?yàn)橐粋(gè)類不能夠串行化,還是因?yàn)橐粋(gè)類對于串行化是無效的。
實(shí)現(xiàn)串行化接口
在大多數(shù)實(shí)例中,為實(shí)現(xiàn)一個(gè)類的Serializable接口,你需要聲明該類實(shí)現(xiàn)該接口即可,不需要另外的代碼。例如,下面語句聲明一個(gè)類實(shí)現(xiàn)該接口。
public Myclass implements Serializable
{
//Definition of the class
}
美中不足的是,類中的所有字段必須是可串行化的(或者瞬時(shí)的-我們將做到這一點(diǎn)),這意味著它們或者是基本類,或者類的類型是自身可串行化的,同時(shí)該類的所有超類也必須是可串行化的。在你自己擁有的類中很可能找到這樣的類,但是有一個(gè)或兩個(gè)Java的類不實(shí)現(xiàn)Serializable接口,而且不能把它們串行化。在java.awt包中的Graphics類就是這種類的一個(gè)例子,在進(jìn)入使川窗口的釋序時(shí),我們會(huì)看到更多的有關(guān)這個(gè)類的內(nèi)容。無論如何這是不可少的,但是可以找到別的途徑。
相關(guān)推薦:
2015計(jì)算機(jī)等級考試二級Java入門教程章節(jié)匯總
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |