第一个是正确的 Scala 代码但第二个甚至无法编译的可能性有多大?
编译的那个
object First {
class ABC(body: => Unit) {
val a = 1
val b = 2
println(body)
}
def main(args: Array[String]): Unit = {
val x = new ABC {
a + b
}
}
}
这个不能在 Scala 2.11 和 2.12 上编译
object Second {
class ABC(body: => Int) {
val a = 1
val b = 2
println(body)
}
def main(args: Array[String]): Unit = {
val x = new ABC {
a + b
}
}
}