Scala 类

package Scala

/**
 * Created by Administrator on 2017/5/15.
 * Kafka,Spark底层是Scala编写的
 * http://www.imobilebbs.com/wordpress/%E6%95%99%E7%A8%8B/scala%E5%BC%80%E5%8F%91%E6%95%99%E7%A8%8B
 */

/**
 * ScalaTest:该类是一个单列对象,和Java相似,Scala中任何Singleto对象,若是包含main方法,均可以做为应用的入口点
 *
 *
 */
object ScalaTest {
  /**
    Scala的单例对象

    Scala不能定义静态成员,取而代之的是单列对象,以object关键字定义,
    类和单例对象间的差异是,单例对象不带参数,而类能够。由于单例对象不是用new关键字实例化的,
    因此没机会传递给它实例化参数。每一个单例对象都被实现为虚拟类(synthetic class)的实例,
    并指向静态的变量,由于它们与Java静态类有相同的初始化语义。

    在下面几个场景下能够使用Scala单例对象:
    做为存放工具函数或常量的地方
    高效地共享单个不可变实例
    须要使用单个实例来协调某个服务时
   */


  /**
    独立对象(standalone object)
  */


  /**
    伴生对象(companion object)
  */

  private var lastNumber = 0;
  def newUniqueNumber() = {
    lastNumber += 1
    lastNumber
  }

  def main(args: Array[String]) {
    print(newUniqueNumber())
  }



}
相关文章
相关标签/搜索