オブジェクト指向言語
Rubyは純粋なオブジェクト指向言語です。
- 操作の対象になるものはすべてオブジェクトであり、操作の結果得られるものもまたオブジェクトです。
- クラスとは、状態(例えば曲名)とその状態を使用する手続き(例えば曲を演奏する手続き)を1つにしたものです。
- クラスを定義したら、クラスごとに多数のインスタンスを作成します。クラスインスタンスと同じ意味でオブジェクトという用語も使います。
- Rubyでは、コンストラクタを呼び出してオブジェクトを作成します。コンストラクタはクラスに関連付けられた特殊なメソッド(手続き)です。標準のコンストラクタは new です。 song1 = Song.new(”Do Re Me”)
song2 = Song.new(”Moon River”) - インスタンスは同じクラスから生成されたものですが、それぞれ固有の特性を持っています。
- すべてのオブジェクトには一意なオブジェクト識別子(オブジェクトID)があります。
- インスタンス変数(インスタンスごとに固有の値を持つ変数)を定義できます。これらのインスタンス変数はオブジェクトの状態を保持します。
- 各クラス内には、インスタンスメソッドを定義できます。メソッドは、クラス内及びクラス外から呼び出すことができる機能の集まりです。これらのインスタンスメソッドが、そのオブジェクトのインスタンス変数、つまりオブジェクトの状態を操作します。
コメント