Serializable 接口有什么意义?
What is the point of Serializable interface?
这是一个runnable demo
import java.io._
object Main extends App {
case class Value(s: String)
val serializer = new ObjectOutputStream(new ByteArrayOutputStream())
serializer.writeObject(Value("123"))
println("success") //> success
}
请注意,尽管我没有将我的 class 标记为可序列化,但程序还是成功了。 Serializable 在 Scala 中有意义吗?
Case classes 在 Scala 中默认扩展 Serializable
。如果你创建一个常规的 class 它将需要扩展 Serializable
否则它会抛出一个序列化错误。
这是一个runnable demo
import java.io._
object Main extends App {
case class Value(s: String)
val serializer = new ObjectOutputStream(new ByteArrayOutputStream())
serializer.writeObject(Value("123"))
println("success") //> success
}
请注意,尽管我没有将我的 class 标记为可序列化,但程序还是成功了。 Serializable 在 Scala 中有意义吗?
Case classes 在 Scala 中默认扩展 Serializable
。如果你创建一个常规的 class 它将需要扩展 Serializable
否则它会抛出一个序列化错误。