Scala,在特征中访问抽象类的类

时间:2010-11-23 00:52:11

标签: scala scala-2.8

我正在我的Scala代码中试验隐式变量。我编写了以下示例代码,但不幸的是它无法编译。我想知道,有人知道这里缺少什么吗? (在Linux上使用scala 2.8.0和SBT 0.7.4)

谢谢, 阿里

trait Feed 
trait FeedFactory  {   
type T <: Feed   
implicit val op_name = classOf[T].getCanonicalName    
def create():T   
def destroy(op:T)   
}

Error: class type required but FeedFactory.this.T found    
implicit val op_name = classOf[T].getCanonicalName

1 个答案:

答案 0 :(得分:5)

在编译时忘记了类型T(参见类型擦除)。但是scala通过编译提供了保留类型的Manifest

这是一个更完整的explanation