java io流中为什么要序列化和反序列化
2017-07-04 09:59
204 查看
一. 将对象的状态信息转换为可以存储或传输的形式的过程。在序列化期间,对象将其当前状态写入到临时或持久性存储区。以后,可以通过从存储区中读取或反序列化对象的状态,重新创建该对象。
序列化使其他代码可以查看或修改那些不序列化便无法访问的对象实例数据。确切地说,代码执行序列化需要特殊的权限:即指定了SerializationFormatter 标志的 SecurityPermission。在默认策略下,通过 Internet 下载的代码或 Intranet 代码不会授予该权限;只有本地计算机上的代码才被授予该权限。
通常,对象实例的所有字段都会被序列化,这意味着数据会被表示为实例的序列化数据。这样,能够解释该格式的代码有可能能够确定这些数据的值,而不依赖于该成员的可访问性。类似地,反序列化从序列化的表示形式中提取数据,并直接设置对象状态,这也与可访问性规则无关。
对于任何可能包含重要的安全性数据的对象,如果可能,应该使该对象不可序列化。如果它必须为可序列化的,请尝试生成特定字段来保存不可序列化的重要数据。如果无法实现这一点,则应注意该数据会被公开给任何拥有序列化权限的代码,并确保不让任何恶意代码获得该权限。
-----------------------------------------------------------------------------------------------------------------
在JAVA编程中:
就是保存,读取。 ***************************** 序列化将信息保存起来,反序列化读取已保存的信息, 就像你的QQ登录时的密码,记住密码就是一个序列化的功能。
相关文章推荐
- 为什么XML需要序列化和反序列化
- 今天无意中发现JavaBean类基本都要求实现了Serializable接口,以前只是知道序列化以后,可以通过io流的方式将对象序列化和反序列化,进行存取,但不知道为什么需要序列化,今天总结一下
- 【Java IO流】对象的序列化和反序列化
- Java 中的类为什么要实现序列化呢 / JAVA中序列化和反序列化中的静态成员问题
- Json和其序列化和反序列化
- 使用JSON JavaScriptSerializer进行反序列化和序列化时报错,字符的长度超出了MaxJsonLength的长度
- Delphi的序列化和反序列化?
- 面试基础之序列化和反序列化的总结
- java 序列化和反序列化
- JSON序列化和反序列化集合、字典、数组的处理
- c# xml序列化和反序列化。也就是xml的解析和反解析。
- Newtonsoft.Json 序列化和反序列化 时间格式
- 序列化和反序列化
- 深入java 序列化和反序列化基本用法
- c# 序列化(Serialize)、反序列化(Deserialize)(转载)
- Python 中数据的序列化和反序列化(json处理)
- JAVA单例模式深入,序列化以及反序列化获取对象实例
- c#序列化及反序列化(三种方式)
- 栋哥带你学Java缓冲流、Properties集合、序列化流以及反序列化流
- [asp.net]C#实现json的序列化和反序列化