设计我的案例类时遇到了一些困难。一个简化的版本是这样的:Scala案例类层次结构
abstract class Base(s: Option[String]) {
//code
}
case class CaseClass(s: Option[String] = None) extends Base(s) {
//code
}
而且我有,我想这样做的方法:
def method(base : Base) = {
//code
base copy (s = Some("string"))
}
当然,我得到:
value copy is not a member of Base
所以我想do是基于我的基类(不是case类)创建一个新实例。显然不能这样做。但是,如何以优雅的方式解决这个问题?
提前致谢!
相关问题:http://stackoverflow.com/questions/2911562/case-class-copy-method-abstraction – 2010-11-07 19:49:49
http://scala-programming-language.1934581.n4.nabble.com/Question-on- case-class-and-copy-method-td1936310.html – 2010-11-07 20:13:39