【发布时间】:2010-12-01 19:00:17
【问题描述】:
我很难理解如何使用清单。
这是我的问题: 我创建了一个新的参数化类 C 并尝试像这样覆盖等于:
override def equals(that:Any)=that match{
case that:C[T] => true /*do smth else not relevant*/
case _ => false
}
当然,我收到“警告:类型模式 C[T] 中的非变量类型参数 T 未选中,因为它已被擦除消除”。我尝试使用清单,就像我在许多其他功能中使用的一样:
override def equals(that:Any)(implicit manifest:Manifest[T])=that match{
case that:C[T] => true
case _ => false
}
但我收到“错误:方法等于不覆盖任何内容”消息。
我不知道如何解决这个问题。谁能帮帮我?
【问题讨论】:
标签: scala manifest equals type-erasure