Java 使用字段常量扩展scala中的父级

Java 使用字段常量扩展scala中的父级,java,scala,Java,Scala,我想借助静态final字段在scala中扩展父级。 父类没有参数构造函数 我将在Java中使用的代码是: class Child extends Parent{ public static final String param = "I_AM_NEEDED"; Child(){ super(param); } } 有没有一种方法可以在scala中实现,例如 class Child( val param:String = "I_AM_NEEDED" )

我想借助静态final字段在scala中扩展父级。 父类没有参数构造函数

我将在Java中使用的代码是:

class Child extends Parent{
    public static final String param = "I_AM_NEEDED";

    Child(){
        super(param);
    }
}
有没有一种方法可以在scala中实现,例如

class Child( val param:String = "I_AM_NEEDED" ) extends Parent(param){
    //code here
}

因此您有一个不能更改的字段?

在Scala中,静态字段保存在
对象上,而不是
类上。因此,要在Scala中复制Java行为,您应该创建一个存储了
param
Child
伴生对象。然后您可以将其传递给
父级
构造函数:

class Parent(val s: String)

class Child() extends Parent(Child.param)

object Child {
  val param = "I_AM_NEEDED"
}