本文共 1115 字,大约阅读时间需要 3 分钟。
信息来源于 DT大数据梦工厂微信公众账号:DT_Spark DT大数据梦工厂群号:302306504王家林老师微信号:wangjialinandroid
1、Scala单例对象 Scala单例对象是十分重要的,没有像在Java一样,有静态类、静态成员、静态方法,但是Scala提供了object对象,这个object对象类似于Java的静态类,它的成员、它的方法都默认是静态的。//如果object的静态成员要被外界访问,则该成员不能被private修饰object University{ private var studentNo = 0 def newStudentNo = { studentNo += 1 studentNo } } object objecOps { def main (args : Array[String]) : Unit = { println(University.newStudentNo) println(University.newStudentNo) } }
与Java另一个不一样的是,如果是静态类的静态变量、静态方法,类加载就会执行,但是Scala只有在第一次使用object的静态变量,静态方法才会生效。object也有一个隐形的无参的构造器。
2、Scala伴生对象 如果有同样一个类与该object名字一样,则称该object为该类的伴生对象,相对应,该类为object的伴生类。如果一个类有它的伴生对象,这个类就可通过object的名字访问到所有成员,但object不在该类的作用范围。class University{ val id = University.newStudentNoprivate var number = 0def aClass (number : Int){ this.number += number}}object University { private var studentNo = 0 def newStudentNo = { studentNo += 1 studentNo } }
object对象为静态常量、静态变量区域,可以直接调用,共享全局变量很有意义,伴生对象方便类的构建,可做为当前类的静态方法、成员的集合。
Scala 深入浅出实战经典(1-64讲)完整视频、PPT、代码下载:百度云盘:
腾讯微云:
360云盘: 访问密码 45e2
Scala视频及其更新和其他资料(Spark公开课、安卓基础、移动互联网)下载: 百度云盘:转载地址:http://merub.baihongyu.com/