java - 在 Java 中使异常字段成为 transient

标签 java exception serialization transient

我有一个扩展异常的类,因此必须是可序列化的。异常类包含一个不可序列化的字段,因此我正在考虑将其设为 Transient。我的理解是,这样做意味着如果存储了我的类(class),则无法恢复该字段。在执行期间什么时候可以序列化/反序列化我的异常? (n.b. 据我所知,我不会将这些写入数据库或文件)。

最佳答案

如果您没有自己明确地序列化它们,那么我认为可以安全地假设使您的字段 transient 不会产生不良影响。

根据我的理解,JVM 不会在没有被明确要求的情况下序列化对象,因此,除非期望 Exception 类被您的应用程序序列化,否则我认为您没有理由担心。

我想如果你正在写一个库,因此不能知道你的类的所有用例,你可能需要多加小心。

关于java - 在 Java 中使异常字段成为 transient ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5946644/

相关文章:

php - 什么是 php_binary 序列化处理程序?

java - 如何获取我的对象的特定属性?

java - 将日志文件拆分为由正则表达式分隔的 block

c# - 使用异常而不是冗长的空检查是否可以接受?

java - 在 Try block 中,为多个异常创建一个 Catch 还是为每个异常创建一个 Catch 更好?

java - 如何在java中继续执行try catch语句

ios - 不同 iOS 版本上的 NSKeyedArchiver/NSKeyedUnarchiver 兼容性

java - 未在 linux/EC2 实例中创建日志文件

java - 在代码中更改 eclipse 插件的语言

c# - Json.NET 在没有父级的情况下序列化对象属性