学习Scala之前,在JavaScript里常使用apply()方法。
class Account private (val id: Int, initialBalance: Double) {
private var balance = initialBalance
}
object Account {
def newUniqueNumber(): Int = {
// 随便写的
9527
}
def apply(initialBalance: Double) = new Account(newUniqueNumber(), initialBalance)
}
object Main {
def main(args: Array[String]): Unit = {
// 注意:没有new
val acct = Account(1000.0)
// a是一个长度为1的数组,第一个元素值为100
var a = Array(100)
println("a.length=" + a.length)
println("a(0)=" + a(0))
// b是一个长度为100的数组,数组里的元素都是null
var b = new Array(100)
println("b.length=" + b.length)
println("b(0)=" + b(0))
}
}
- https://blog.matthewrathbone.com/2017/03/06/scala-object-apply-functions.html
- https://javabeat.net/using-apply-unapply-methods-scala/
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。