定义类:var,val之间的差异并将其排除在外?

时间:2013-08-13 02:10:40

标签: class scala

以下三个Scala声明之间有什么区别?我理解general distinction between val and var

class A(x: T){ ... }
class B(val x: T){ ... }
class C(var x: T){ ... }

1 个答案:

答案 0 :(得分:3)

AB之间的差异(valvar创建访问者):

class A(a: Int) {}

// Doesn't compile (value a is not a member of)
// (new A(1)).a

class B(val b: Int) {}

(new B(1)).b                                    //> res0: Int = 1
相关问题