鍍金池/ 教程/ Java/ Java泛型參數化類型
Java泛型方法擦除
Java泛型無界類型擦除
Java泛型綁定類型擦除
Java泛型類型推斷
Java泛型不能重載
Java泛型不能轉換類型
Java泛型有界類型參數
Java泛型類型擦除
Java泛型集合(Set)
Java泛型參數化類型
Java泛型-類型參數命名約定
Java泛型無界通配符
Java泛型不能使用實例
Java泛型不能使用instanceof運算符
Java泛型教程
Java泛型多重邊界
Java泛型下限通配符
Java泛型不能使用異常
Java泛型不能使用數組
Java泛型環(huán)境設置
Java泛型類
Java泛型通配符使用指南
Java泛型原始類型
Java泛型上限通配符
Java泛型映射(Map)
Java泛型方法
Java泛型是什么?
Java泛型不能使用原始類型
Java泛型列表(List)
Java泛型多種類型參數
Java泛型不能使用靜態(tài)域

Java泛型參數化類型

泛型類可以具有參數化類型,其中類型參數可以用參數化類型代替。 以下示例將展示上述概念。

示例

使用您喜歡的編輯器創(chuàng)建以下java程序,并保存到文件:ParameterizedTypes.java 中,代碼如下所示 -

package com.yiibai;

import java.util.ArrayList;
import java.util.List;

public class ParameterizedTypes {

    public static void main(String[] args) {
        Box4<Integer, List<String>> box = new Box4<Integer, List<String>>();

        List<String> messages = new ArrayList<String>();

        messages.add("Hi");
        messages.add("Hello");
        messages.add("Bye");

        box.add(Integer.valueOf(104), messages);
        System.out.printf("Integer Value :%d\n", box.getFirst());
        System.out.printf("String Value :%s\n", box.getSecond());

    }
}

class Box4<T, S> {
    private T t;
    private S s;

    public void add(T t, S s) {
        this.t = t;
        this.s = s;
    }

    public T getFirst() {
        return t;
    }

    public S getSecond() {
        return s;
    }
}

執(zhí)行上面代碼,得到以下結果 -

Integer Value :104
String Value :[Hi, Hello, Bye]