沒有implements Serializable,你就不能通過rmi(包括ejb)提供遠程調用。
serialization 允許你將實現了Serializable接口的對象轉換爲字節序列,這些字節序列可以被完全存儲以備以後重新生成原來的對象。
serialization不但可以在本機做,而且可以經由網絡操作(就是貓小說的RMI)。這個好處是很大的----因爲它自動屏蔽了操作系統的差異,字節順序等。比如,在Window平臺生成一個對象並序列化之,然後通過網絡傳到一臺Unix機器上,然後可以在這臺Unix機器上正確地重構這個對象。
Object serialization主要用來支持2種主要的特性:
1.Java的RMI(remote method invocation).RMI允許象在本機上一樣
操作遠程機器上的對象。當發送消息給遠程對象時,就需要用到
serializaiton機制來發送參數和接收返回直。
2.Java的JavaBeans. Bean的狀態信息通常是在設計時配置的。
Bean的狀態信息必須被存起來,以便當程序運行時能恢復這些狀態信息。
這也需要serializaiton機制。
下面是關於serializable的一個例子,如果MyClass不實現
serializable,程序將拋出異常。
總之如果在網絡的環境下做類傳輸,應該還是應該implements Serializable.