Scala泛型与&lt ;:和多种特征

时间:2012-10-14 16:22:12

标签: scala generics traits

Java的一个几乎未知的特性是这种泛型语法:

public class Baz<T extends Foo & Bar> {}

我想在Scala中做同样的事情,但我不知道怎么做,有人可以给我语法吗?

我之前有过:

class MongoObject[T <: CaseClass]

现在我需要:

class MongoObject[T <: IdentifiableModel & CaseClass]

或至少类似的东西

由于

1 个答案:

答案 0 :(得分:22)

您可以像使用extends子句一样使用with关键字:

class MongoObject[T <: IdentifiableModel with CaseClass]

这意味着T必须是IdentifiableModelCaseClass的子类型。