Scala返回未知类型的对象

时间:2016-03-14 12:02:14

标签: scala object return instance

如何在Scala中保存未知类型的对象并将其返回?

我有几个类都是从同一个类中实例化的,比如

class And(lhs: ExprTree, rhs: ExprTree) extends ExprTree
class Or(lhs: ExprTree, rhs: ExprTree) extends ExprTree

和一个需要返回所述类实例的函数(即And(lhs, rhs),但我没有先验知识)。我还需要存储And()Or()的实例,而不知道它是哪一个。

1 个答案:

答案 0 :(得分:0)

val expr: ExprTree = ???

会为您提供一个标识符,该标识符可以包含AndOr的值。

类似地,

def (...): ExprTree = ???

将为您提供一个函数,该函数将返回AndOr的值(假设一些适当的参数,此处用......表示)。

这个答案似乎太简单明了。但它似乎也满足了我的想法。