【发布时间】:2016-06-29 11:04:31
【问题描述】:
如何在 Scala 中保存未知类型的对象并返回它?
我有几个类都是像这样从同一个类实例化的
class And(lhs: ExprTree, rhs: ExprTree) extends ExprTree
class Or(lhs: ExprTree, rhs: ExprTree) extends ExprTree
和一个需要返回所述类的实例的函数(即And(lhs, rhs),但我不知道哪个)。我还需要存储And() 或Or() 的实例,而无需事先知道它是哪一个。
【问题讨论】:
-
我不太确定问题是什么,但在我看来,您正在寻找类似 @987654321@
-
“即”是指“例如”吗?
-
是的,我的意思是例如;)对不起
-
到目前为止,您为您的函数尝试过什么签名?为什么不能简单地返回
ExprTree的实例(即def f():ExprTree)? -
你能扩展一下你的用例吗? “没有先验知识”。好的,但是什么会告诉您必须返回哪个?
标签: scala object return instance