看板 [ java ]
討論串[心得] 序列化的小細節
共 13 篇文章

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者qrtt1.時間19年前 (2006/10/26 21:32), 編輯資訊
0
1
0
內容預覽:
引述《pao0111.bbs@ptt.cc (Pao)》之銘言:. > ObjectInputStream ois = new ObjectInputStream(fis);. > A a = (A)ois.readObject();. > fis = new FileInputStream("
(還有408個字)

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者qrtt1.時間19年前 (2006/10/26 21:32), 編輯資訊
0
0
0
內容預覽:
引述《pao0111.bbs@ptt.cc (Pao)》之銘言:. > 1.程式邏輯可能出大紕漏。. > 假設A1和A2都參考到B1,而我經由A1取得B1,. > 而修改了B1的內容。但事實上A2參考的是B2,. > 只不過B1.equals(B2) == true。但我修改B1以後. > B1
(還有512個字)

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者pao0111 (Pao)時間19年前 (2006/10/26 19:28), 編輯資訊
0
0
0
內容預覽:
以下恕刪. Dear qrtt1,. 在我的認知裡:. 比較「物件」的「內容」是否相同,使用equals方法。. 比較「變數」的「值」是否相同,使用==(雙等號)。. 而在我提出的例子裡,想表達的就是序列化的過程裡,. 可能會產生多個「內容相同」,但「記憶體位置不同」的物件。. (但嚴格來說,每個參
(還有1112個字)

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者qrtt1 (愚者)時間19年前 (2006/10/26 17:50), 編輯資訊
0
0
2
內容預覽:
Dear Pao,. 請記得比較物件是用equals方法,不是用==. 對於任何物件的製作我們都有責任覆寫hashCode與equals. 心有餘力再寫一下toString. 另外,Serialization的目的是保持同樣"內容的物件". 我可以有千百個內容相同的物件,但他們的記憶體位置都不同.
(還有2087個字)

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者pao0111 (Pao)時間19年前 (2006/10/26 09:12), 編輯資訊
0
0
0
內容預覽:
不敢當,討論區本就互相交流嘛。. 版大問的問題,N大也幫我回答了呀...^^. 想說兩種寫法都不會有任何警告,是很容易忽略的細節,. 所以才提出來給大家參考...^^. 不然有互相參照的物件在網路傳或在硬碟保存的時候,. 多出來的reference可能讓程式邏輯出錯呢。. --. 發信站: 批踢