{
class MyClass(name: String) {}
val x = new MyClass("x")
println(x.name) // Error name is not a member of MyClass
}
but
{
abstract class Base
case class MyClass(name: String) extends Base {}
var x = new MyClass("x")
println(x.name) // name is a member of MyClass
}
那么,案例类有什么用呢?为什么所有的构造函数参数都变成了变量。
name
在两个示例中都是成员,但在第一个示例中是私有的,而在第二个示例中是公开的。案例类创建其构造函数参数public val
默认情况下。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)