0
我正在学习方法和函数之间的区别。我下面这个链接了解scala的Vs函数
http://jim-mcbeath.blogspot.co.uk/2009/05/scala-functions-vs-methods.html
文章说,如果你编译下面的代码:
class test {
def m1(x:Int) = x+3
val f1 = (x:Int) => x+3
}
我们应该得到两个文件 1的Test.class 2.测试$$ anonfun $ 1 .class
但我不明白。其次,例如说,如果我们在REPL执行下面的命令,我们会得到下面的
scala> val f1 = (x:Int) => x+3
f1: (Int) => Int = <function>
但我只得到这个
scala> val f1 = (x:Int) => x+3
f1: Int => Int = $$Lambda$1549/1290[email protected]
是因为我们使用的是不同的版本?请帮忙。
是的,早期版本的Scala(和REPL)将产生结果的''表示。 –
jwvh
你应该永远不要依赖这样的实现细节。例如,由于显而易见的原因,Scala.js将始终生成ecactly * zero *类文件。 –