From: matz@... (Yukihiro Matsumoto) Date: 1997-12-20T23:53:41+09:00 Subject: [ruby-list:5741] Re: ruby 1.1b2 released まつもと ゆきひろです In message "[ruby-list:5739] Re: ruby 1.1b2 released" on 97/12/20, Shugo Maeda writes: |前田です。 || private/publicに続くvisibility - function || 一見privateだが継承しない |のようにrespond_to?はfalseなのに,実際には呼び出せてしまうようです。 すいません.前田さんのご指摘の通りです.パッチ当てておきます. |あと継承しないということは, 「継承しない」とは誤解を受けやすい表現ですが,「継承しない」 のはvisibilityであって,メソッドを継承しないわけではないです. つまり,functionメソッドはprivateメソッドと同様に動作します が,サブクラスで再定義した場合,privateメソッドと違って自動 的にはprivateにならず,そのvisibilityはpublicになります. 菊谷さんが以前引っかかった「selectがprivateだから,サブクラ スでもselectがprivateになって呼べなかった」という問題に対す る回答です.ですから, |class Bar < Foo | def bar | foo | end |end | |b = Bar.new |b.bar | |は本来ならエラーということでしょうか? これはエラーである必要はないです. まつもと ゆきひろ /:|)