next up previous
Next: 13.2 メソッドの定義 Up: 13 オブジェクト指向プログラミングの例 Previous: 13 オブジェクト指向プログラミングの例

13.1 クラスの定義

クラスとしてパーティクルクラス(particle)とロケットクラス(rocket)のふた つを考えることにする.ロケットクラスはパーティクルクラスのサブクラス とする.

(defclass particle
  :slots (pname
          mass
          x-position
          y-position
          x-speed
          y-speed
          x-acceleration
          y-acceleration))

(defclass rocket
  :super particle
  :slots (motor-force))
ここで,pname,x-position,..などはインスタンス変数で,particleクラスに 所属するオブジェクト(インスタンス)がすべてこの変数名で表されるデータ 要素を持っていることになる. :superキーで指定するものは親クラスである.ここでは複数の親をもつことは できないとする.

generated through LaTeX2HTML. M.Inaba 平成18年5月7日