エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
記事へのコメント2件
- 注目コメント
- 新着コメント
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
疑問:特異クラスの構文の不思議 - rubyco(るびこ)の日記
Rubyの特異クラスは以下のように書きます。 class <<obj # ... end ここで、"<< obj"という構文で、特異... Rubyの特異クラスは以下のように書きます。 class <<obj # ... end ここで、"<< obj"という構文で、特異メソッドを定義するために「objという特定のインスタンスに固有なクラス」を仮想的に指定しています。これが特異クラスです。 ところで、どうして "<< obj"という構文なのだろう? というのが疑問です。いや、もちろんただの構文といえば構文なのですが、ここで不等号をこういう風に使う積極的な理由がよくわからなかったのです。 たとえば、Rubyでは、クラスの継承関係は"Child < Parent"と表現しますね。そうすると、不等号の開いているほうが継承関係でルートに近い。 継承関係と、クラス・インスタンスの関係は別なので、継承関係は "<" で、クラス・インスタンスの関係は "<<" で表現することにすると、"特異クラス << インスタンス" よりも "インスタン




2009/04/24 リンク