Scala 案例类扩展特性不使用副本

Scala 案例类扩展特性不使用副本,scala,inheritance,traits,Scala,Inheritance,Traits,我试着 但我明白了 错误:类栏需要是抽象的,因为没有定义this.Bar类型(int:int)的trait Foo中的方法副本 由于Bar是一个case类,因此它会自动定义一个具有此签名的copy方法 为什么Foo类不能满足traitBar定义的接口?我引用的是: 名为copy的方法隐式添加到每个case类中,除非该类已经有一个名为copy的成员(直接定义或继承),或者该类有一个重复的参数 case类如果是继承的,即使是抽象的,也不会实现copy。某处有一个副本。@m-z,找到了!这本身被标记为

我试着

但我明白了

错误:类栏需要是抽象的,因为没有定义this.Bar类型(int:int)的trait Foo中的方法副本

由于
Bar
是一个case类,因此它会自动定义一个具有此签名的
copy
方法

为什么
Foo
类不能满足trait
Bar
定义的接口?

我引用的是:

名为copy的方法隐式添加到每个case类中,除非该类已经有一个名为copy的成员(直接定义或继承),或者该类有一个重复的参数


case类如果是继承的,即使是抽象的,也不会实现copy。某处有一个副本。@m-z,找到了!这本身被标记为重复,我不正确。
trait Foo[A] {
  def copy(int: Int): A
}

case class Bar(int: Int) extends Foo[Bar]