transient用于防止字段被序列化,如密码、临时数据或不可序列化对象,确保安全与兼容。

transient 是 Java 中的一个关键字,用来修饰类的成员变量。它的主要作用是:在对象序列化(Serialization)过程中,被 transient 修饰的变量不会被保存到文件或传输流中,也就是说,这个字段会被序列化机制忽略。
为什么需要 transient?
当一个对象实现 Serializable 接口后,Java 可以将其状态转换为字节流,便于存储或网络传输。但并不是所有字段都适合或需要被持久化。比如:
- 敏感信息(如密码),出于安全考虑不应被序列化
- 临时缓存数据,反序列化后可以重新生成
- 某些不能被序列化的对象(如线程、Socket连接等)
这时就可以用 transient 来排除这些字段。
使用示例
下面是一个简单的例子:
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。
还木有评论哦,快来抢沙发吧~