オブジェクト

オブジェクトはクラスを実体化したもの(インスタンス)です。
画面を構成する部品(ボタン、ウィンドウなど)、印刷される文字及び、処理されるデータの各要素は、すべてオブジェクトとして管理されます。

オブジェクトの階層構造

Biz/Browserは"//"という名前のオブジェクト(Rootオブジェクト)を頂点とした階層構造でオブジェクトを管理します。
ほとんどのオブジェクトは、この階層構造に含まれます。
Rootオブジェクトは階層構造の基点となり、Biz/Browserのウィンドウ内のひとつのタブ(コンテキスト)に対応するオブジェクトです。
../_images/core03_image001.gif
その他に、"//"(Rootオブジェクト)を基点とする階層構造に属さない一時的なオブジェクトも存在します。
すべてのオブジェクトは、参照関係により維持されており、あるオブジェクトがほかのオブジェクトから参照されている間は削除されることはありません。
"//"(Rootオブジェクト)を基点とする階層構造に接続しているオブジェクトは、常に親となるオブジェクトから子オブジェクトが参照されているため、明示的に親と子の参照関係を切断しない限り維持されます。
"//"(Rootオブジェクト)から直接/間接的に参照されなくなったオブジェクトは、一時的にメモリ上に滞留しますがCRSインタプリタのガーベジコレクタにより回収され開放されます。

オブジェクトの種類

Biz/Browserには多くのクラスが内蔵されています。
クラスはDisplayObjectクラスから派生する表示系のクラス(以下DisplayObject)とそれ以外のデータ系のクラス(以下DataObject)に大別することができます。
DataObjectはデータの値を管理するための基本的なクラスでアプリケーションが処理するデータを論理的な階層構造を持って管理することができ、クライアントとサーバ間のデータ通信あるいはクライアント内に保持される一時的な作業用の領域として利用することができます。
DisplayObjectはデータ系のオブジェクトの機能に加えて、画面または帳票上にオブジェクトの階層構造と同じ重なりをもって表示されます。
これらのオブジェクトはユーザに対して、情報の表示及びデータ入力のインターフェースを提供します。
DisplayObjectとDataObjectは次の方法により互いにデータの伝播を行うことができます。
  • ユーザによる画面操作の結果発生する「イベント」をオブジェクトに定義される「イベントハンドラ」が捕らえて処理する
  • オブジェクト間の関係を表す「参照演算子(&=)」による自動再計算を設定する
../_images/core03_image002.png