上篇我們簡單的介紹了java中泛型的最基本的內(nèi)容,知道了什么是泛型以及泛型對(duì)我們的程序編寫有什么好處,最后一類型限定收尾。本篇將從類型限定開始闡述java泛型中很重要的概念:通配符
一、何為通配符
     首先我們看一段代碼:

/*我們聲明了一個(gè)泛型方法*/public class Pair<T> {
    public static <T extends Double> void show(myArray<T> a){   
    }
}


     上文聲明了一個(gè)泛型方法,但是實(shí)在是太過啰嗦,于是我們可以使用通配符來簡化這種泛型方法的聲明形式。有時(shí)我們也稱通配符為更加簡潔的類型變量的限定。接下來我們看看使用通配符如何聲明一個(gè)泛型方法。

public class Pair<T> {
    public static void show(myArray<? extends Double> a){   
    }
}


     對(duì)比兩段代碼,我們可以看出來,類型限定也就是<T extends Double>主要用于類型參數(shù)的定義,聲明在訪問修飾符后面函數(shù)返回值之前;而通配符也就是<? extends Double>主要用于實(shí)例化類型參數(shù),聲明在類型變量之前,簡化了泛型方法的聲明。所以,凡是可以由通配符實(shí)現(xiàn)的都可以使用類型限定來實(shí)現(xiàn),因?yàn)橥ㄅ浞呛喕说念愋拖薅ā?br/>二、通配符的只讀性
     以上是這個(gè)通配符的一個(gè)特性,通配符的只讀性是其第二個(gè)重要特性,我們知道:Child類繼承于Base類是不能推出Pair<Child>繼承于Pair<Base>的,所以:

public static void print(Pair<Base>){

}

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式