oop:aboutclass
文書の過去の版を表示しています。
−目次
クラス・オブジェクトについて
資料
概要
クラスまたはオブジェクトは、Miniscriptにおいては親を指す特別な __isa エントリを持つマップです。
また、ドット構文で呼び出された関数は、呼び出されたオブジェクトを参照する自己変数を取得します。
まずクラスというのは、ここでは「特殊なマップ変数」という扱いになります。
通常のmapと違って特殊なのは、以下の内容です。
- 各種変数・関数の呼び出し方が「class.変数」「class.関数」となっていること
- 「__isa」というキーが存在していること
__isaは、マップの基本クラスを参照する特別なエントリーという位置づけになっており、基準にするクラスの情報が入ってます。
クラスから作成したインスタンスでは、この基底クラスの情報を参照して呼び出すという位置づけになります。
サンプルに__isaの内容を呼び出すプログラムも書いてみました。
サンプル
shape={"sides":0} square = new shape square.sides=3 square x=new square print x.sides shape.puresq=function return self.sides*self.sides end function print x.puresq() square square.__isa
サンプル説明
oop/aboutclass.1673640755.txt.gz · 最終更新: 2023/01/14 05:12 by machiaworx