0

私はScalaを学んでいますが、次のJavaコードをScalaに変換する方法がわかりません。

class Parent {
  Parent(int i) {}
}
public class Test extends Parent {
  final static int I = 1;
  Test() {
    super(I);
  }
}

助けてください、ありがとう。

これが私の失敗した試みです:

1.1。

class Parent(val i: Int) {}
object Test {
  val I = 1
}
class Test extends Parent(I) {
}

2.2。

class Parent(val i: Int) {}
class Test extends Parent(I) {
  val I = 1
}
4

1 に答える 1

2
class Parent(i: Int)

class Test extends Parent(Test.I)  // `super` is done in the parent's constructor

object Test {
  val I = 1                        // `static` members go in an `object`
}

ノート:

  1. 実際には空のブレースは必要ありません。
  2. パブリックにアクセスできるようにしたい場合にのみiwith で宣言します (ただし、変更はできません)。valデフォルトではプライベートです。
于 2013-01-26T06:02:43.700 に答える