你可以覆盖scala @serializable对象中的流编写器吗?

Fre*_*lam 10 serialization scala serializable

我现在明白scala @serializable对象可以和Java Serializable对象一样使用.在Java Serializable对象中,您可以覆盖以更改对象流的方式:writeObject(ObjectOutputStream)/ readObject(ObjectOutputStream).

你可以覆盖或注入scala @serializable对象的方法,允许你改变对象的序列化方式吗?

Aar*_*rup 11

是的,您可以在Scala中使用与Java中相同的方法:

@throws(classOf[IOException])
private def writeObject(out: ObjectOutputStream): Unit = // ...

@throws(classOf[IOException])
private def readObject(in: ObjectInputStream): Unit = // ...
Run Code Online (Sandbox Code Playgroud)