ログイン
編集不可のページディスカッション情報添付ファイル

2013-06-07 17:02:12時点のリビジョン3

メッセージを消す
alstamber/2013FreshmanRubySeminar5

MMA

クラスもオブジェクト

クラスはオブジェクトを作るための設計図だという話をしました。
ここで驚くべき話があります。実はRubyではクラスもまたオブジェクトなのです!!!!!

RubyではクラスはClassというクラスのインスタンスになっています。

となると当然疑問が湧いてきます。Classというクラスはどのクラスからつくられているの?という疑問です。
答えを正確に説明するのは難しいのですが、ここではClassというクラスのインスタンスは自分自身から作られている、という説明にとどめておきます。

クラスインスタンス変数

クラスもやっぱりオブジェクトなので、今までみてきたオブジェクトと同じように変数を持ったりメソッドを持ったりできます。
最初に、クラス自体のインスタンスが持っている変数についてみていくことにしましょう。

クラス自体のインスタンスが持っている変数をクラスインスタンス変数といいます。そのまんまですね。

クラスメソッド

次はメソッドの話です。クラスも通常のオブジェクトと同じようにメソッドを持つことができます。
このようなメソッドをクラスが持っているメソッドなのでクラスメソッドといいます。

クラスには親子関係がある

Objectクラス