Scala伴生对象

半兽人 发表于: 2017-09-01   最后更新时间: 2017-09-01 15:18:11  
{{totalSubscript}} 订阅, 4,133 游览

伴生对象

在Java或C++中,你会用到即有实例方法又有静态方法的类。在Scala中,你可以通过类和与同名的“伴生”对象来达到同样的目的。例如:

class Account {
  val id = Account.newUniqueNumber
  private var balance = 0.0

  def deposit(amount: Double){
    balance += amount
  }
}

object Account {
  private var lastNumber = 0;

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

  def main(args: Array[String]) {
    val account = new Account();
    val account1 = new Account();
    println(account.id);
    println(account1.id);
  }
}

类与伴生对象可以相互访问私有方法。它们必须存在同一个源文件中

更新于 2017-09-01
在线,6小时前登录

查看scala更多相关的文章或提一个关于scala的问题,也可以与我们一起分享文章