LoginSignup
1
1

More than 5 years have passed since last update.

JAVA ジェネリクス メモ

Last updated at Posted at 2016-01-22

ジェネリクス(generics)とは
汎用的(広く色々な方面に用いること)なクラスやメソッドを
特定の型に対応付けること。

スクリーンショット 2016-01-22 13.33.13.png

  • ジェネリクスとは_____________________________________________________
  • クラス宣言時には、EやKという「仮の型名」を使っておく
  • クラス利用時に、それをStringなどの「実際の型」に置き換えして利用する
    ______________________________________________________________________

クラスが「インスタンスを生み出す原型」ならば
ジェネリクス利用クラスは「クラスを生み出す原型」

参考にしたページ(こちらのページから重要な部分を抜粋しました)

▪️Test107.java

public class Test107 {
    public static void main(String[] args) {
        Generics<String> s;
        Generics<Integer> i;
        Generics<Hero> h;

        Generics g = new Generics();
        g.put(1234);
        g.put("Java");
        System.out.println(g.get());

        Generics<String> g2 = new Generics<String>();
        g2.put("Java2");
        System.out.println(g2.get());

        Generics<Integer> g3 = new Generics<Integer>();
        g3.put(12345);
        g3.put(6789);
        System.out.println(g3.get());

        Generics<Hero> h2 = new Generics<Hero>();
        Hero hero = new Hero();
        Hero hero2 = new Hero();
        h2.put(hero);
        h2.put(hero2);
        System.out.println(h2.get());

    }

}

▪️Generics.java

//ジェネリクスを使ったGenericsクラス
//インスタンスを1つだけ格納できる
//どんな型のインスタンスでも格納できる
//格納するためのput()メソッド、
//取り出すためのput()メソッドがる
public class Generics<E> {
    private E data;

    public void put(E d) {
        this.data = d;
    }

    public E get() {
        return this.data;
    }

}

▪️Hero.java

public class Hero {

}
1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1