标签:
Scala 源文件中可以有很多类(class),这些类默认都是Public的。
在Scala中,声明一个未用priavate修饰的字段 var age,scala编译器会字自动帮我们生产一个私有字段和2个公有方法get和set ,这和C#的简易属性类似;
stu.age = 10 (此处的age是def age = (x$1: Int):Unit)
println(stu.age) (此处的age是def age: Int)
若使用了private修饰,则它的方法也将会是私有的。这就是所谓的统一访问原则。
还有一种常用的定义方式是:
private [this] var gender = "male" //代表该属性只属于当前实例,即使是类内部的方法也不能访问该属性
Scala Object:
scala没有静态的修饰符,但object下的成员都是静态的 ,若有同名的class,这其作为它的伴生类。在object中一般可以为伴生类做一些初始化等操作
类构造器:
每个类都有一个默认构造器this(),重载(附属)构造器都需要直接或间接(即调用其它附属构造器)调用主构造器this()
如果希望实例化类的时候禁止调用主构造器this,就在定义类的时候使用Private关键字,例 : class Teacher private{}
标签:
原文地址:http://www.cnblogs.com/jiang-Xin/p/5658763.html