Scalaのサブクラスでスーパークラスに値を割り当てる方法は何ですか。
スカラでは、子クラスが親クラスに値を与える方法は、親クラスのコンストラクタを呼び出すことです。子クラスは独自のコンストラクタを定義する際に、superキーワードを使用して親クラスのコンストラクタを呼び出し、適切な引数を渡すことができます。
たとえば、親クラスPersonと子クラスStudentがある場合、親クラスに値を設定する方法は以下のようになります。
class Person(name: String, age: Int) {
// 父类的构造函数
}
class Student(name: String, age: Int, school: String) extends Person(name, age) {
// 子类的构造函数
}
上記の例では、Studentクラスは親クラスであるPersonのコンストラクタを呼び出して値を割り当てています。サブクラスのオブジェクトをインスタンス化する際は、まず親クラスのコンストラクタを呼び出し、親クラスの属性を初期化し、その後にサブクラスの属性を初期化します。
覚えておくべきことは、親クラスにデフォルトの引数なしのコンストラクターがない場合、子クラスが親クラスのコンストラクターを呼び出す際には、適切なパラメータを提供する必要があるということです。