Javaの勉強8 クラス型の配列、ポリモーフィズム

最終更新:2006/06/20

トップページへ戻る
前へ 次へ

8-1. クラス型の配列

    ・クラス型配列の宣言と作成

      基本データ型の配列と同様に、配列に格納できる要素数は配列の生成時に決まり、あとから変更することはできません。


      ファイル名はTestProduct4.javaで保存し、コンパイルと実行を行ってください。
// 商品クラスをテストするクラス
public class TestProduct4 {
    public static void main(String[] args) {
        Product[] p = new Product[3];
        p[0] = new Product("0001","SJC-A受験対策セット",14763);
        p[1] = new Product("0002","SJC-P完全対策セット",25039);
        p[2] = new Product("0003","DBマガジン",1380);

        for ( int i = 0; i < p.length; i++ ) {
            System.out.println(" code = " + p[i].getCode());
            System.out.println(" name = " + p[i].getName());
            System.out.println(" price = " + p[i].getPrice());
        }
    }
}
      TestProduct4の実行結果
 code = 0001
 name = SJC-A受験対策セット
 price = 14763
 code = 0002
 name = SJC-P完全対策セット
 price = 25039
 code = 0003
 name = DBマガジン
 price = 1380


8-2. ポリモーフィズム(多態性)

      スーパークラスの変数ですべてのサブクラスのオブジェクトを扱えることをポリモーフィズム(多態性)といいます。

      ファイル名はTestProduct5.javaで保存し、コンパイルと実行を行ってください。
// 商品クラスをテストするクラス
public class TestProduct5 {
    public static void main(String[] args) {
        Product[] p = new Product[4];
        p[0] = new DiscountProduct("0001","SJC-A受験対策セット",14763,20);
        p[1] = new Product("0002","SJC-P完全対策セット",25039);
        p[2] = new DiscountProduct("0003","DBマガジン",1380,10);
        p[3] = new Product("0004","Windows Developerマガジン",1380);

        for ( int i = 0; i < p.length; i++ ) {
            System.out.println(" code = " + p[i].getCode());
            System.out.println(" name = " + p[i].getName());
            System.out.println(" price = " + p[i].getPrice());
        }
    }
}
      TestProduct5の実行結果
 code = 0001
 name = SJC-A受験対策セット
 price = 11810
 code = 0002
 name = SJC-P完全対策セット
 price = 25039
 code = 0003
 name = DBマガジン
 price = 1242
 code = 0004
 name = Windows Developerマガジン
 price = 1380
トップページへ戻る
前へ 次へ
Copyright© 2005- Naoyuki Sano. All rights reserved.