「Java」ジェネリクスを使用するクラスのサンプル

環境
JDK1.8
Eclipse 2019

書式

class クラス名<T> {
 	public クラス名(T data) {
            this.dta = data;
      }
}

ジェネリクスでString型を指定する
クラス名<String> cgA = new クラス名<>(String型文字列);

ジェネリクスでInteger型を指定する
クラス名<Integer> cgA = new クラス名<>(Integer型文字列);

使用例

package com.arkgame.Test;

public class GenericMap {

      public static void main(String[] args) {

            // ジェネリクスでString型を指定
            Chang<String> cgA = new Chang<>("study skill");
            System.out.println(cgA.getFunc());

            // ジェネリクスでInteger型を指定
            Chang<Integer> cgB = new Chang<>(345);
            System.out.println(cgB.getFunc());

            // ジェネリクスでDouble型を指定
            Chang<Double> cgC = new Chang<>(25.65);
            System.out.println(cgC.getFunc());

            // ジェネリクスでBoolean型を指定
            Chang<Boolean> cgD = new Chang<>(false);
            System.out.println(cgD.getFunc());
      }

}

//ジェネリクスクラスの定義
class Chang<T> {
      T dta;

      // コンストラクタ
      public Chang(T data) {
            this.dta = data;
      }

      // メソッド
      public T getFunc() {
            return dta;
      }
}

実行結果
study skill
345
25.65
false

Java

Posted by arkgame