若是你作远程方法调用(RPC)时,好比,服务器端有个类A及对象a,客户端须要无视网络的存在,直接调用对象a。这种状况下,就须要把类A设计为可序列化的,那么它的实例a也就能够实例化了。
说得简单点,在服务器的 命名空间中的对象a,确定不能直接被客户端的命名空间中的一个对象调用,这不可能,对吧。
可是若是你把服务器的对象a中的特征属性(不必定是全部属性)变成xml,传送到客户端,而后客户端用你给的特征属性能够模拟的生成一个对象a。
这个过程就是 rpc,而要把对象a变成xml,就是序列化,反之,把xml变成模拟对象a就是反序列化。
以上是rpc中的序列化。
实际使用中,把app关闭的时候,内存对象能够经过序列化,能够变成能够保存的xml,这样,以便下次app再开得时候,把之前保存过的xml(或者txt等)反序列化成对象。
一句话,序列化就是把内存中对象以一种能够保存的形式保存起来。
须要注意的是:
序列化能够制定序列化整个类,或者 类的某些属性。服务器