标签:Java 变量 关键字 transient static JVM 修饰 序列化
目录1 作用
一旦类的某个成员变量被transient修饰,该变量将不再是对象持久化的一部分,即无法被序列化和反序列化。
2 注意事项
-
transient关键字只能修饰类的成员变量,而不能修饰本地(即局部)变量,也不能修饰方法和类。
-
并且transient生效的一个隐含前置条件是 对象可序列化,那么,类需要实现 Serializable 接口。
-
static修饰的变量,不管是否被 transient 修饰,都不可被序列化(如果反序列化后,类中的static变量有值,则该值为当前JVM中对应的static变量的值)。原因:序列化保存的是对象的状态,静态变量保存的是类状态,所以序列化并不能保存静态变量。
3 应用场景
一些安全相关的敏感信息,比如密码,一般情况下是不能离开JVM的,不能被序列化。
标签:Java,变量,关键字,transient,static,JVM,修饰,序列化 来源: https://www.cnblogs.com/mediocreWorld/p/16176883.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。