ruby では . オブジェクトを持つオペレーターは.
、メッセージを送信するのに役立ちます (右に.
)。
上記の原則と this-を使用すると、オペレーターはオブジェクトにメッセージを送信している"100".to_s
と言えます。良いですね!.
to_s
100
では、はputs("hello")
どうですか?地元の Ruby 専門家への質問は次のとおりです。
どこ 。オペレーター?
ここの受け手は誰ですか?
ruby では . オブジェクトを持つオペレーターは.
、メッセージを送信するのに役立ちます (右に.
)。
上記の原則と this-を使用すると、オペレーターはオブジェクトにメッセージを送信している"100".to_s
と言えます。良いですね!.
to_s
100
では、はputs("hello")
どうですか?地元の Ruby 専門家への質問は次のとおりです。
どこ 。オペレーター?
ここの受け手は誰ですか?
この場合の受信者は暗黙的self
です。puts
の方法ですKernel
。すべてのクラスにカーネル モジュールが含まれているため、すべてのオブジェクトにputs
メソッドがあります。唯一のことは、それはプライベートです。self
プライベート メソッドは暗黙的に(または を使用してsend
)のみ呼び出すことができます
puts 'foo' # >> foo
1.puts 'bar' # ~> -:3:in `<main>': private method `puts' called for 1:Fixnum (NoMethodError)
1.send :puts, 'bar' # >> bar
レシーバーは省略され、self
そのコンテキストにあります。したがって、.
も省略されます。puts
は のメソッドでKernel
あり、受信者が何であれ、インスタンスを持つ任意のクラスに含まれているputs
ため、アクセスできます。Kernel