クラス

提供: AB開発Wiki
2007年8月6日 (月) 02:38時点におけるEgtra (トーク | 投稿記録)による版 (+Category:言語仕様)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
ナビゲーションに移動検索に移動

ABで管理するオブジェクトの機能のすべてはクラスで定義します。クラスはカプセル化、継承、抽象化などオブジェクト指向的なプログラミングを可能にしています。

また、ABのすべてのクラスはObjectクラスの派生クラスです。

クラス型変数(即ちオブジェクト)はすべて参照型として扱われ、インスタンスはヒープ領域に存在します。クラスの内部構造はブラックボックスであり、データ配置の方法はコンパイラに依存します(これに対し、構造体はビットフィールドレベルで低レベルAPIと互換性を持ちます)。

クラスの定義

Class ClassName
    Members
End Class

項目

ClassName
クラス名を指定します。
Members
クラスの構成要素を記述します。構成要素は下記のとおりです。
・基底クラス
・インタフェース
・コンストラクタ
・デストラクタ
・クラスデータメンバ(静的メンバ)
・インスタンスデータメンバ
・クラスメソッド(静的メソッド)
・インスタンスメソッド

ABでは動的メソッドの書き方によって下記の言語機能を表現できます。この際、専用のステートメントや修飾子は必要ありません。

  • インデクサ
  • プロパティ

メンバの定義

メソッドの定義

コンストラクタ・デストラクタ

アクセシビリティ

継承

仮想関数

抽象クラス・抽象メソッド

New/Delete