您的位置:首页 > 其它

每天学一点Scala之class 成员属性 修饰符

2017-08-19 15:20 267 查看
在scala里,类的成员属性的修饰符,可能有以下几种情况吧:

情况一:使用var修饰

在类里,可以获取,修改
类的对象实例,可以获取,修改

情况二:使用val修饰

在类里,只能获取,不能修改
在对象里,只能获取,不能修改

情况三:使用private var 修饰

在类里,可以获取,修改
但是,
对象,不能获取,修改了

情况四:使用private val修饰

在类里,只能获取,不能修改
但是,
对象,不能获取,修改了

情况五:使用private[this] var 修饰

在类里,可以获取,修改
此类成员属性,属于对象级别的属性,只能在当前实例里,用;不能通过传递其他对象来使用此属性

情况六:使用private[this] val修饰

在类里,只能获取,不能修改
此类成员属性,属于对象级别的属性,只能在当前实例里,用;不能通过传递其他对象来使用此属性

总之:

A、 看见var修饰符,说明,类和对象里, 此属性可以获取,修改
B、 看见val修饰符,说明,在类和对象里,此属性,只能获取,不能修改,就是不能重新赋值了
C、 看见private var, private val 修饰符,是类级别的私有,是类私有;只能在类的内部使用,对象不能使用;也就是说说,将成员属性的访问权限,限制在类的内部,对象不能访问了,更别提修改了。
D、看见类似于private[this]的修饰符,说明,对成员属性,进行了更加严格的限制,只能当前实例对象里使用,不能通过其他对象传递过来使用。









内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息