Rational Developer for System z
COBOL for Windows バージョン 7.5 プログラミング・ガイド


サブクラスの定義

クラス (サブクラス、派生クラス、または子クラスと呼ばれる) を、別のクラスを特殊化したもの (スーパークラス、基本クラス、または親クラスと呼ばれる) にすることができます。

サブクラスは、そのスーパークラスのメソッドおよび インスタンス・データを継承し、is-a 関係によって、そのスーパークラスに関連付けられています。例えば、サブクラス P がスーパークラス Q から継承し、サブクラス Q がスーパークラス S から継承した場合、P のインスタンスは Q のインスタンスであり、また (推移性によって) S のインスタンスでもあります。したがって、P のインスタンスは、Q と S のメソッドおよびデータを継承します。

サブクラスを使用することの利点:

制約事項: COBOL プログラムでは多重継承 を使用することはできません。 定義する各 COBOL クラスには、Java または COBOL でインプリメントされた即時スーパークラスは必ず 1 つだけでなければなりません。また、それぞれのクラスは、直接的または間接的に java.lang.Object から派生したもので なければなりません。継承のセマンティクスは、Java によって定義されます。

サブクラスの構造および構文は、クラス定義の構造および構文と同一です。サブクラス定義の OBJECT 段落内で、それぞれ、DATA DIVISION および PROCEDURE DIVISION に、インスタンス・データとメソッドを 定義します。個別のオブジェクト・インスタンスにではなく、サブクラス自体に関連付けるデータとメソッドを必要とするサブクラスに、サブクラス定義の FACTORY 段落内で、別々の DATA DIVISION および PROCEDURE DIVISION を定義します。

COBOL インスタンス・データは private です。サブクラスが COBOL スーパークラスのインスタンス・データに アクセスすることができるのは、スーパークラスがそのアクセスを可能にするために属性 (get または set) インスタンス・メソッドを定義する場合に限られます。

例: 口座
例: サブクラスの定義 (メソッドに関して)

関連タスク
クラスの定義
インスタンス・メソッドのオーバーライド
属性 (get および set) メソッドのコーディング
サブクラス・インスタンス・メソッドの定義
ファクトリー・セクションの定義

関連参照
継承、オーバーライド、および隠蔽 (「Java 言語仕様」)
COBOL クラス定義構造 (「COBOL for Windows 言語解説書」)


ご利用条件 | フィードバック

Copyright IBM Corporation 1996, 2008.
このインフォメーション・センターでは Eclipse テクノロジーが採用されています。(http://www.eclipse.org)