在自行序列化的時,在自行序列化的類中重寫的方法writeObject和readObject方法是怎么被調用的,程序中也沒有用該類對象調用這兩個方法???具體的邏輯是怎樣的呢,是自行就被調用了嗎?
在自行序列化的時,在自行序列化的類中重寫的方法writeObject和readObject方法是怎么被調用的,程序中也沒有用該類對象調用這兩個方法???具體的邏輯是怎樣的呢,是自行就被調用了嗎?
在自行序列化的時,在自行序列化的類中重寫的方法writeObject和readObject方法是怎么被調用的,程序中也沒有用該類對象調用這兩個方法???具體的邏輯是怎樣的呢,是自行就被調用了嗎?
2017-09-18
舉報
2017-09-26
方法括號里有 java.io.ObjectOutputStream s
2022-03-26
親~答案是沒有問題的哦~您可能對if...elseif...else的邏輯運算沒有看清楚哦~可以仔細閱讀一下我們知識內容部分的講解哦~這是自己慕課自己弄的編輯器,你到右側展示界面右鍵查看源文件就知道了,實際上是屬于嵌入式的,只是分成兩個文件了而已。
2018-12-14
隨隨便便就給別人最佳回答?你自己搞懂了?
因為這是規定:
在序列化過程中,如果被序列化的類中定義了writeObject 和 readObject 方法,虛擬機會試圖調用對象類里的 writeObject 和 readObject 方法,進行用戶自定義的序列化和反序列化。
如果沒有這樣的方法,則默認調用是 ObjectOutputStream 的 defaultWriteObject 方法以及 ObjectInputStream 的 defaultReadObject 方法。
用戶自定義的 writeObject 和 readObject 方法可以允許用戶控制序列化的過程,比如可以在序列化的過程中動態改變序列化的數值。
具體看這篇文章:http://www.hollischuang.com/archives/1140
2017-10-29
在序列化的時候不是調用 oos(是ObjectOutputStream 類的對象) 對象的 writeObject(stu);方法嗎,然后把 Student 類的對象作為參數傳入,那么在Student類下 重寫的writeObject方法和readObject方法不應該由Student 對象調用 才能達到里邊自行序列化的操作嗎,整體代碼中也沒有 用Student 對象進行調用這兩個方法啊 ?只是用ObjectOutputStream 對象進行序列化和反序列化 Student對象的操做了 ?我就是不明白這里 ?是怎么繞的 ?就讓Student 類下那兩個重寫的方法起到作用了... 感謝你給與的回答
2017-09-20
同問,我也想知道