私はカッコ無しのメソッドとpostfixOpsを理解するために、スカラコードの短いスニペットを書こうとしています。ここで
が私のコードです:scala:エラー:再帰的な値が必要です
import scala.language.postfixOps
object Parentheses {
def main(args: Array[String]) {
val person = new Person("Tom", 10);
val tomAge = person getAge
println(tomAge)
}
class Person(val name: String, val age: Int) {
def getAge = {
age
}
}
}
それをコンパイルしながら、しかし、私は問題があると言う:
error: recursive value tomAge needs type
println(tomAge)
私はperson.getAge
へのメソッド呼び出しperson getAge
を交換した場合、プログラムが正しく実行されます。 person getAge
の関数呼び出しが失敗したのはなぜですか?
これはすばらしい説明です!共有していただきありがとうございます、私は共有している医者を見て、とても助かりました! –
ありがとう、@Damian Lattenero。これはややこしい "異常"です。次の 'println'コード行が' tomAge'を参照していなかった場合、 'error:Intはパラメータを取らない'というエラーメッセージはもう少し啓示されていました。 –
私はWebコンパイラでそれを見つけようとしていましたが、あなたはただコメントしてくれました。それは素晴らしいことでした。 –