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

Java泛型原始類型

原始類型是泛型類或接口的對象,如果其類型參數(shù)在創(chuàng)建過程中傳遞。以下示例將展示上述概念。

示例

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

package com.yiibai;

public class RawTypes {
    public static void main(String[] args) {
        Box5<Integer> box = new Box5<Integer>();

        box.set(Integer.valueOf(105));
        System.out.printf("Integer Value :%d\n", box.getData());

        Box5 rawBox = new Box5();

        // No warning
        rawBox = box;
        System.out.printf("Integer Value :%d\n", rawBox.getData());

        // Warning for unchecked invocation to set(T)
        rawBox.set(Integer.valueOf(106));
        System.out.printf("Integer Value :%d\n", rawBox.getData());

        // Warning for unchecked conversion
        box = rawBox;
        System.out.printf("Integer Value :%d\n", box.getData());
    }
}

class Box5<T> {
    private T t;

    public void set(T t) {
        this.t = t;
    }

    public T getData() {
        return t;
    }
}

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

Integer Value :105
Integer Value :105
Integer Value :10
Integer Value :10