logo

Ruby クラスメソッド ~ビリー・エリオット~

ヒューマンリソシアで、CTC教育サービス 藤江一博氏によるコラム『Ruby クラスメソッド ~ビリー・エリオット~』が公開されました。

###

今回もRubyの不思議を少しだけ垣間見ることにします。

前回のコラムでは、特異クラス/特異メソッドについて解説しました。特定のインスタンスだけに機能追加が可能でこれが特異メソッドでした。 特異メソッドの一種という事でクラスメソッドの正体を明かしたのですが、「クラスメソッドはクラス自身の特異クラスにあることになります。」 ここで疑問が湧きます。クラスの特異クラスとは何のことなのでしょう?

 操作する対象であるインスタンスが、ある特定のインスタンスだけのためのクラスを持つという概念が特異クラスですが、本来設計図であるはずのクラスがインスタンス同様に特異クラスを持つというのが解せません。

 リファレンスマニュアルに因れば、「Rubyでは、クラスもオブジェクトの一つでClassクラスのインスタンスです。」という記載があります。
非常に判りづらいですが、「クラスのクラス」つまりメタクラスとして「Classクラス」が存在するのだそうです。

(この続きは以下をご覧ください)
リンク

このプレスリリースの付帯情報

(画像をクリックすると拡大画像をご覧いただけます。)

関連情報
http://resocia.jp/
本プレスリリースは発表元企業よりご投稿いただいた情報を掲載しております。
お問い合わせにつきましては発表元企業までお願いいたします。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]