给定:
trait SomeTypeNotSerializable
trait ValueProvider[T] extends java.io.Serializable {
def get: T
}
ValueProvider[SomeTypeNotSerialized]
是否可序列化?有没有办法通过用函数包装对象来解决不可序列化的问题?
最佳答案
根据规则,它是可序列化
的,但是如果您将该T
存储为非 transient 字段,它会在运行时失败。如果 T
是 transient 的或者没有字段支持(例如,在每次调用 get
时创建),那么你应该没问题,尽管我仍然很好奇为什么你想要序列化服务对象,这不是通常的做法。
关于java - 用可序列化函数包装不可序列化类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57173810/