如何用transient将属性脱离序列化
发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,这篇文章主要讲解了"如何用transient将属性脱离序列化",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"如何用transient将属性脱离序列化"吧
千家信息网最后更新 2025年02月02日如何用transient将属性脱离序列化
这篇文章主要讲解了"如何用transient将属性脱离序列化",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"如何用transient将属性脱离序列化"吧!
transient关键字
默认情况下当执行了对象的序列化的时候,会将类中的全部属性的内容进行全部的序列化操作,但是很多情况下,有一些属性可能并不需要进行序列化的处理,这个时候就可以在属性定义上使用transient关键字来完成了。
private transient String name;
在进行序列处理的时候name属性的内容是不会被保存下来的,换言之,读取的数据name将是其对应数据类型的默认值"null"。
import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.ObjectInputStream;import java.io.ObjectOutputStream;import java.io.Serializable;@SuppressWarnings("serial")class Person implements Serializable {//Person类可以被序列化private transient String name;private int age;public Person(String name, int age) {this.name = name;this.age = age; } @Overridepublic String toString() {return "姓名:" + this.name + "、年龄:" + this.age; }}public class JavaAPIDemo {private static final File SAVE_FILE=new File("D:" + File.separator + "mldn.person");public static void main(String[] args) throws Exception {//saveObject(new Person("小喷嚏",78));System.out.println(loadObject()); }public static void saveObject(Object obj)throws Exception{ ObjectOutputStream oos=new ObjectOutputStream(new FileOutputStream(SAVE_FILE)); oos.writeObject(obj); //序列化oos.close(); }public static Object loadObject()throws Exception{ ObjectInputStream ois=new ObjectInputStream(new FileInputStream(SAVE_FILE)); Object obj= ois.readObject(); //反序列化ois.close();return obj; }} //姓名:null、年龄:78
如果假设类之中有一些是需要计算保存的属性内容往往是不需要被序列化的,这个时候就可以使用transient,但是在实际开发之中,大部分需要被序列化的类往往都是简单java类,所以这一个关键字的出现频率并不高。
感谢各位的阅读,以上就是"如何用transient将属性脱离序列化"的内容了,经过本文的学习后,相信大家对如何用transient将属性脱离序列化这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!
序列
属性
内容
时候
关键
关键字
情况
学习
之中
姓名
年龄
数据
处理
喷嚏
大部分
实际
对象
就是
思路
文章
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
单位网络安全总结范文
传奇4一直前端服务器验证中
网络安全法包括局域网吗
网络安全建设论文题目
郴州计算机软件开发多少钱一个月
数据库hr模式
连接数据库提示错误
win7检测不到dns服务器
中国物联网服务器何时启动
回流焊软件开发
蔡甸专业的软件开发价格
服务器ssh连接被拒
华为云软件开发云下载
斐讯音响服务器
西安软件开发驻场代办
csgo职业选手玩的什么服务器
网络安全和模式识别
网络技术服务可以抵扣吗
上海软件开发合肥
iis服务器配置新的ca证书
蓝牙打印机服务器无网络能用吗
贵阳警示教育基地软件开发
数据库结构数值型
软件开发需要会哪几种语言
网络技术专家面试问题
牛牛软件开发代码
如何做好网络安全应急演练
android数据库创建
杭州边锋网络技术有限公
xp系统适合做软件开发吗