我从来没有从人为设计的编组和动词名词(一个AddTwo类有一个apply添加两个!)的例子中理解它。我知道它是语法糖,因此(我从上下文推论得出)它必须经过精心设计,以使某些代码更直观。具有apply函数的类给出什么意思?它的作用是什么,它的目的是使代码变得更好(解组,动词名词等)?在伴随对象中使用时有什么帮助?
3 回答
BIG阳
TA贡献1859条经验 获得超6个赞
对于那些想快速阅读的人来说,这是一个小例子
object ApplyExample01 extends App {
class Greeter1(var message: String) {
println("A greeter-1 is being instantiated with message " + message)
}
class Greeter2 {
def apply(message: String) = {
println("A greeter-2 is being instantiated with message " + message)
}
}
val g1: Greeter1 = new Greeter1("hello")
val g2: Greeter2 = new Greeter2()
g2("world")
}
输出
greeter-1正在使用消息hello实例化
greeter-2正在用消息世界实例化
添加回答
举报
0/150
提交
取消