点击(此处)折叠或打开
- class Person {
- private var age = 0
- def increment(){age += 1}
- def current = age
- }
-
- class Student{
- var age = 0
- }
-
- object HelloOOP {
- def main(args: Array[String]): Unit = {
- val person = new Person()
- person.increment()
- println(person.current)
- }
var age = 0
在scala里面,定义一个属性必须要手动赋值,不像在java里面,会默认赋值0
这里,scala默认属性是private的,而且也会默认生成共有的setter、getter方法。但是如果属性被显示声明为private,那么默认会生成private的getter、setter
val age = 0
对于val,scala会默认加上final,并且只生成getter方法,没有setter方法
private[this] var age = 0
scala特有,对象私有属性,这种属性只有本对象可以访问,该类的其它对象不能访问。通过这种机制实现实例成员的隔离。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/28912557/viewspace-1825676/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/28912557/viewspace-1825676/