在scala中扩展带有伴生对象的case类

在scala中扩展带有伴生对象的case类,scala,inheritance,case-class,Scala,Inheritance,Case Class,我有两个案例类,在两个不同的文件中分别有相应的伴生对象。我需要扩展其中一个类,并将另一个类放在同一个文件中。这在scala中可能吗?有关于如何做的建议吗 以下是文件A.scala和B.scala中现有的类A和B object A { def apply(){} } case class A(a: Int, b: Int) {} object B { def apply() {} } case class B(x: Int, y: Int) {} 我需要一个第三类C,它扩展了a,并且在

我有两个案例类,在两个不同的文件中分别有相应的伴生对象。我需要扩展其中一个类,并将另一个类放在同一个文件中。这在scala中可能吗?有关于如何做的建议吗

以下是文件A.scala和B.scala中现有的类A和B

object A {
  def apply(){}
}
case class A(a: Int, b: Int) {}

object B {
  def apply() {}
}
case class B(x: Int, y: Int) {}

我需要一个第三类C,它扩展了a,并且在第三个文件C.scala中也有B类。

1您不应该从case类继承


2如果两个类的全名(包括包名)不同,则可以使用相同的名称声明两个类。因此,文件C.scala必须属于另一个包。

我应该说清楚,我打算删除B.scala文件并将其内容移动到C.scala。那么在哪种情况下,我猜它可以在同一个包中?是的,您可以//符号以达到最小注释长度