外部クラスからの継承

CG::Class::UseAsExternal プロパティーは、外部のクラスから継承する場合に使用します。

このタスクについて

モデルの一部ではないクラスから継承するには、スーパークラスの CG::Class::UseAsExternal プロパティーを Checked に設定します。この設定により、スーパークラスにコードが生成されなくなります。

スーパークラス・ヘッダー・ファイルの #include をサブクラスに生成するには、以下のいずれかの操作を行います。

外部クラスから継承する別の方法に、外部クラスをコード生成スコープから除外する方法があります。例えば、実際にインポートせずにクラスで Java クラス javax.swing.JTree を拡張する場合は、以下の手順を行います。

手順

  1. javax パッケージを描画します。
  2. ネスト・パッケージ swingjavax の中に描画します。
  3. JTree クラスを swing パッケージの中に描画します。
  4. コンポーネントから javax パッケージを除外します (ブラウザー内で選択された要素にしない)。このアクションにより、コンポーネントが javax パッケージ内の何に対してもコードを生成しません。

タスクの結果

この方法では、コードを生成することなく、モデルの残りの部分に JTree クラスを参照する機能を与えます。モデル内のクラス (例えば MyJTree) javax.swing.JTree から継承できます。サブクラスがパブリックの場合、次のようなコードが生成されます。

import javax.swing.JTree;
...
public class MyJTree extends JTree {
...
}

特定のクラスではなく、パッケージ全体をインポートするためのクラスが必要な場合は、«Usage» のステレオタイプを持つ依存関係 (依存関係を参照) を外部パッケージ (この場合は javax.swing) に追加します。生成されるファイルには以下の行が含まれます。

import javax.swing.*

外部要素の使用について詳しくは、外部要素の可視化を参照してください。


フィードバック