【发布时间】:2012-10-14 17:47:35
【问题描述】:
考虑我们有一个类Foo 和一个方法bar(它不接受任何参数并返回字符串"bar")。 bar的实现有两种方式
第一个是
class Foo {
def bar() = "bar"
}
第二个是
class Foo {
def bar = "bar"
}
虽然两者的作用基本相同,但需要不同的称呼,第一个像这样
someFoo.bar()
第二个
someFoo.bar
为什么我应该使用一个而不是另一个,根本区别是什么?
【问题讨论】:
-
我认为这是我在 SO 上看到的 scala 标签最常见的问题之一 :)
-
它们需要以不同的方式调用实际上,没有什么能阻止你调用没有大括号的方法定义的括号:
def foo() {}; foo(反之亦然)
标签: scala