码迷,mamicode.com
首页 > 其他好文 > 详细

scala 单例、伴生对象、伴生类

时间:2017-03-10 13:08:23      阅读:128      评论:0      收藏:0      [点我收藏+]

标签:single   val   实例   unit   let   ted   伴生类   test   sso   

单例:使得对象成为系统中的唯一实例

package scala

object single {
  private var sno:Int = 3;
  def singlesno()={
    sno += 1
    sno
  }
}

object singleTest {
  def main(args: Array[String]): Unit = {
    println(single.singlesno())
    println(single.singlesno())
  }
}

伴生对象: 当单例对象与某个类共享同一个名称时,它就被称为是这个类的伴生对象(companion object)。类和它的伴生对象必须定义在同一个源文件中。类被称为是这个单例对象的伴生类(companion class)。类和它的伴生对象可以互相访问其私有成员

package scala

object associated {
  private var sno:Int = 3;
  def incrementSno()={
    sno += 1
    sno
  }
  
  def main(args: Array[String]): Unit = {
    println("单例对象:" + associated.incrementSno())
    val obj = new associated()
    obj.infoCompObj();
    
  }
}

class associated() {
  def infoCompObj() = println("伴生类中访问伴生对象:" + associated.sno)
}

 

scala 单例、伴生对象、伴生类

标签:single   val   实例   unit   let   ted   伴生类   test   sso   

原文地址:http://www.cnblogs.com/sunyaxue/p/6529776.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!