【发布时间】:2015-01-21 02:33:54
【问题描述】:
我有两个特点
trait AppModel {}
trait ModelOperations {
def get(model: AppModel): Option[AppModel]
def create(model: AppModel): Boolean
}
并实现类
class User extends AppModel {
val id = "xyz"
val name = "abc"
}
class UserOperations extends ModelOperations {
override def get(user: User) : Option[User] = {
// get a new user object by filtering existing parameters
return None
}
override def create(user: User): Boolean = {
// do something
return false
}
}
但是,当我尝试编译时,我收到 method get overrides nothing 和 method create overrides nothing 错误
我打算做的是:声明一个接口I,其方法将接受扩展AppModel的任何类T的参数并返回T
并且任何扩展I 的类都可以具有完全接受T 类作为参数的方法(而不是AppModel 的任何其他类R)
我该怎么办?
【问题讨论】:
标签: scala methods parameters overriding traits