scalaのいくつかの概念を明確にしたいと思います
class Test(a:Int) {
def print = println(a)
}
class Test1(val a:Int) {
def print = println(a)
}
class Test2(private val a:Int) {
def print = println(a)
}
val test = new Test(1)
val test1 = new Test1(1)
val test2 = new Test2(1)
ここで、テスト、test1、test2 にアクセスしようとすると、.
Scalaプリント
scala> test.a
<console>:11: error: value a is not a member of Test
scala> test1.a
res5: Int = 1
scala> test2.a
<console>:10: error: value a cannot be accessed in Test2
Integer a は Test1 と Test2 のフィールドであることを理解しています。しかし、Integer a とクラス Test の関係は何ですか? どうやら Integer a はクラス Test のフィールドではありませんが、print 関数でアクセスできます。