0

私の初心者のScalaの知識では、最後の行を達成する方法はありません。私は間違っているといいのですが、確認したかっただけです。fまた、コンパイラはimportステートメントからメソッドの所有者オブジェクトを知っている必要があるため、理由がわかりません。

object A { def f(s: Any) = println(s) }
import A.f
A f 1 //Works
f 2 // Does not compile

明確にするために、2つの質問があります。

  1. 括弧と明示的な所有者オブジェクト参照のない単一パラメーターメソッドをどのように呼び出す必要がありますか?(件名を参照してください。)
  2. コンパイラが最後のステートメントを理解できない理由は何ですか?
4

1 に答える 1

0
object A { def f(s: Any) {println(s)} }
import A.f
A f 1 //works
f(2) // works

括弧、ドット、中括弧、=(関数)などを省略できる場合の正確なルールは何ですか?

于 2013-03-18T13:57:23.897 に答える