クラスの定義とオブジェクトの作成
クラスの定義は次のように行います。
class クラス名
end
クラスは「class」から始まり「end」で終わりとなります。そしてクラスにはクラス名を指定します。
クラス名はクラスを識別するための名前で大文字のアルファベットから始まります。例えば「Car」と言うクラスを定義するには次のように行います。
Class Car end
クラスを定義したら、今度はクラスからオブジェクトを作成します。
オブジェクトの作成
クラスはあくまで設計図ですので実際に何かを行わせるにはクラスからオブジェクトを作成する必要があります。全てのクラスにはいくつかのクラスに対する動作を行わせるクラスメソッドが用意されています。クラスメソッドについてはまた別のページで詳しく見ていきますが、ここではクラスからオブジェクトを作成するための「new」メソッドを使用してみます。
class クラス名 end 変数名 = クラス名.new()
クラスからオブジェクトを作成するには、クラス名に対して「new」メソッドを実行します。メソッドはクラス名の後にドット「.」を付けて記述します。そして作成されたオブジェクトを格納するための変数名を指定します。
class Car end car1 = Car.new()
クラスは設計図ですので設計図から複数のオブジェクトを作成することが出来ます。作成されたオブジェクトはそれぞれクラスに基づいた動作をしますが別々に操作することが出来ます。
class Car end car1 = Car.new() car2 = Car.new()
サンプルプログラム
では実際に試してみます。
class Car def initialize(carname) @name = carname end def dispName print(@name, "¥n") end end car1 = Car.new("crown") car1.dispName car2 = Car.new("civic") car2.dispName
上記を実行すると次のように表示されます。
今回のサンプルでは「車」の設計図であるクラスを定義し、クラスから2つのオブジェクトを作成しています。オブジェクトは元になっているクラスは同じですが、異なる初期化処理などを行っているため同じメソッドを実行させても別の動作を行います。
次のページではクラスに具体的にどのような動作をさせるのかを定義する方法を見ていきます。
( Written by Tatsuo Ikura )