MF 

クラス本体

クラス本体には、クラス データおよびクラス メソッドを定義するすべてのコードが含まれる。

書き方 1 の一般形式

コンパイラ指令 OOCTRL(+N) を指定した場合に使用される。

注:この構文を使用することが望ましい。


*

書き方 2 の一般形式

コンパイラ指令 OOCTRL(-N) を指定した場合に使用される。


*

すべての書き方の構文規則

  1. クラス管理段落内でクラス名-3 を複数回指定することはできない。
  2. クラス名-3 はクラス名段落内で指定されているクラス名と同じであってもよい。
  3. データ部に連絡節を含めることはできない。

書き方 1 の構文規則

  1. データ部にオブジェクト記憶節を含めることはできない。
  2. データ部内で宣言されたデータ項目は、インスタンス メソッドおよびクラス メソッドから参照できる。

書き方 2 の構文規則

  1. 局所記憶節、報告所節、および画面節で宣言されたデータ項目を参照できるのは、このクラスの手続き部内の文からのみであり、いずれのメソッドからも参照できない。
  2. ファイル節または作業場所節で宣言されたデータ項目は、インスタンス メソッドとクラス メソッド、およびこのクラスの手続き部から参照できる。
  3. オブジェクト記憶節で宣言されたデータ項目は、クラス メソッドから参照できる。

すべての書き方の一般規則

  1. クラス名-3 は、暗黙的に USAGE IS OBJECT REFERENCE と定義される。
  2. クラス名-3 は、それを含む環境部の範囲内で使用できるクラスの名前である。
  3. 外部名-1 は、そのクラスを含むファイルの外部名を指定する。
  4. メソッド-1 はクラス メソッドである。
  5. オブジェクト記憶節内のデータ項目だけが下位クラスによって継承される。

書き方 1 の一般規則

  1. データ項目は実行単位の開始時に初期化され、メソッド呼び出しの間は最終使用時の状態が保たれる。

書き方 2 の一般規則

  1. クラス手続き部内の文は、実行単位内でこのクラスのいずれかのクラス メソッドまたはインスタンス メソッドが最初に実行される前に実行される。
  2. クラスの手続き部の実行が開始されると、局所記憶節内のデータ項目の内容は未定義となる。この記憶節は、クラスの手続き部の実行が完了すると、直ちに割り当てが解除される。
  3. ファイル節および作業場所節で定義されたデータ項目は、クラス メソッドおよびインスタンス メソッドの呼び出しの間は、最終使用時の状態が保たれる。
    注:作業場所節内のデータは、クラスまたはインスタンスの初期化データとして役に立つ。
  4. オブジェクト記憶節で定義されたデータ項目は、クラス メソッドの呼び出しの間は、最終使用時の状態が保たれる。