首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否可以使用Scala中的Typeclasses制作第三方类java.io.Serializable?

是否可以使用Scala中的Typeclasses制作第三方类java.io.Serializable?
EN

Stack Overflow用户
提问于 2014-03-28 16:12:38
回答 2查看 101关注 0票数 0

我想在Scala中为java.io.Serializable实现org.joda.time.format.DateTimeFormat。是否有可能通过台风来实现这一目标?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-03-28 16:34:06

我认为这不可能,因为:

为了序列化一个对象,您需要知道对象的整个状态,以便在反序列化中重构状态。如何获得DateTimeFormat-object的极其复杂的状态?没有可用于此目的的公共API。

我的建议是:不要序列化format对象,只要将其存储在静态常量中就足够了,因为它是不可变的。这充分涵盖了双方-提供者和消费者-使用相同格式的用例。如果您确实需要动态地发送格式化对象,您只需发送格式模式字符串(在大多数情况下它们足够强大),并在反序列化中使用它们来在接收方上构造format对象。

票数 3
EN

Stack Overflow用户

发布于 2014-03-28 17:50:36

java.io.Serializable的设计不适合这样做。有一些替代方案,如https://github.com/scala/pickling。然而,正如mentions所提到的,它们可能不适用于DateTimeFormat

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22717950

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档