群硕面试题-序列化用途:
1)需要将对象的状态保存到文件中,而后能够通过读入对象状态来重新构造对象,恢复程序状态 2)使用套接字在网络上传送对象的程序来说,是很有用的
群硕面试题-序列化注意问题:
1)并非所有类都可以序列化,在cmd下,我们输入serialver java.net.socket,可以得到socket是否可序列化的'信息,实际上socket是不可序列化的 2)类的所有数据成员应可序列化除了声明为transient或static的成员 疑问:为什么不是所有的对象都是可序列化的 3)安全方面的原因,比如一个对象拥有private,public等field,对于一个要传输的对象,比如写到文件,或者进行rmi传输等等,在序列化进行传输的过程中,这个对象的private等域是不受保护的. 4)资源分配方面的原因,比如socket,thread类,如果可以序列化,进行传输或者保存,也无法对他们进行重新的资源分配,而且,也是没有必要这样实现(责任编辑:yjbys.com) |