我有以下Scala类:扩展类斯卡拉 - 新手询问
class ClassA (x2: Int, y2: Int) {
var x = x2
var y = y2
}
class ClassB (x2: Int, y2: Int, z2: Int) extends ClassA (x2, y2) {
var z = z2
}
如果类用作值对象,并没有任何的方法,是用有延长的ClassA ClassB的点?无论如何,我需要定义ClassB中的所有字段。
为什么你需要定义B类中的字段呢? – Simon
取决于您是否拥有适用于'ClassA'对象的代码,并且您希望它能处理'ClassA'的不同子类的实例。否则,我只是'案例类ClassB(x:Int,y:Int,z:Int)'。 – Jesper
考虑使用'val's和特征:'特质C {val x:Int; val y:Int}'。然后'case class ClassA(x:Int,y:Int)扩展C'和'case class classB(x:Int,y:Int,z:Int)扩展C' – Jus12