Android開發(fā)(Java部分)——泛型

泛型:任意的類型
在定義類或者接口的時(shí)候 需要操作數(shù)據(jù) 但是不清楚使用者需要哪種數(shù)據(jù)
定義類器钟、接口崇裁、變量哀澈、方法

在定義的時(shí)候可以使用泛型來代表任意的類型滓窍,但在使用的時(shí)候(定義變量与帆、創(chuàng)建對(duì)象)必須傳遞實(shí)際類型
創(chuàng)建對(duì)象的時(shí)候使用變量去保存對(duì)象了赌,這個(gè)時(shí)候變量類型需要聲明具體類型 new后面可以省略


MyClass.java
import java.util.Collection

//泛型類
class Test<E>{
    E var1;
}

//泛型接口
interface ITest<T>{
    void test(T t);
}

//類繼承一個(gè)接口時(shí)
//方法一:指定接口的類型
//class MyTest implements ITset<String>{
//  @Override
//  public void test(String s) {
//
//  }
//}

//方法二:指定當(dāng)前類為泛型
class MyTest<T> implements ITest<T>{
    @Override
    public void test(T t) {

    }
}


//泛型方法
//必須在方法前使用<T>來表示需要使用泛型
class Foo{
    public<T> void test(T t){
        System.out.println(t);
    }

    public void showList(List<?> list){
        for (int i = 0; i < list.size(); i++){
            System.out.println(list.get(i));
        }
    }
}

//Child cd;
//Father f = cd;
//注意Java的集合類型是不會(huì)自動(dòng)變型  List<Child>  List<Father>
//? 通配符
//在使用一個(gè)泛型時(shí),如果還不確定到底是什么類型玄糟,可以使用勿她?來表示任意類型
//List<String> -> List<Object>

//設(shè)置泛型的上限 extends
class Cat{
    
}
interface IFood{
    
}
class Milk implements IFood{

}
class TianyouMilk extends Milk{

}
//指定傳遞過來的類型的父類必須是IFood
class Student<T extends IFood> {
    public void eat(T t){
        
    }
}


public class MyClass {
    public static void main(String[] args){
        
        
    }

    public void t4(){
        Student<Milk> xw;
        Student<TianyouMilk> zs;
        //Student<Cat> zt;
    }

    public void t3(){
        //Foo foo = new Foo();
        //new ArrayList<String> names = new ArrayList<>();
        //names.add("jack");
        //names.add("merry");
        //foo.test(t: );

        Foo foo = new Foo();
        List<String> names = new ArrayList<>();
        names.add("jack");
        names.add("merry");
        foo.showList(names);
    }

    public void t2(){
        //ITest<String> test = new MyTest<>();
        
        //使用匿名內(nèi)部類對(duì)象
        ITest<List<String>> test = new ITest<List<String>>() {
            @Override
            public void test(List<String>strings) {
                
            }
        };
    }

    public void t1(){
        //在使用的時(shí)候(定義變量、創(chuàng)建對(duì)象)必須傳遞實(shí)際類型
        Test<String> test;
        new Test<String>();

        //創(chuàng)建對(duì)象的時(shí)候使用變量去保存對(duì)象
        //這個(gè)時(shí)候變量類型需要聲明具體類型 new后面可以省略
        Test<String> test2 = new test<>();
        test2.var1 = "jack";
        
        System.out.println(test2.var1.getClass());
    }
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末阵翎,一起剝皮案震驚了整個(gè)濱河市逢并,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌郭卫,老刑警劉巖砍聊,帶你破解...
    沈念sama閱讀 221,695評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異贰军,居然都是意外死亡玻蝌,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,569評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來灶伊,“玉大人疆前,你說我怎么就攤上這事∑溉” “怎么了竹椒?”我有些...
    開封第一講書人閱讀 168,130評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長米辐。 經(jīng)常有香客問我胸完,道長,這世上最難降的妖魔是什么翘贮? 我笑而不...
    開封第一講書人閱讀 59,648評(píng)論 1 297
  • 正文 為了忘掉前任赊窥,我火速辦了婚禮,結(jié)果婚禮上狸页,老公的妹妹穿的比我還像新娘锨能。我一直安慰自己,他們只是感情好芍耘,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,655評(píng)論 6 397
  • 文/花漫 我一把揭開白布址遇。 她就那樣靜靜地躺著,像睡著了一般斋竞。 火紅的嫁衣襯著肌膚如雪倔约。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,268評(píng)論 1 309
  • 那天坝初,我揣著相機(jī)與錄音浸剩,去河邊找鬼。 笑死鳄袍,一個(gè)胖子當(dāng)著我的面吹牛绢要,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播拗小,決...
    沈念sama閱讀 40,835評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼袖扛,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了十籍?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,740評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤唇礁,失蹤者是張志新(化名)和其女友劉穎勾栗,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體盏筐,經(jīng)...
    沈念sama閱讀 46,286評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡围俘,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,375評(píng)論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片界牡。...
    茶點(diǎn)故事閱讀 40,505評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡簿寂,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出宿亡,到底是詐尸還是另有隱情常遂,我是刑警寧澤,帶...
    沈念sama閱讀 36,185評(píng)論 5 350
  • 正文 年R本政府宣布挽荠,位于F島的核電站克胳,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏圈匆。R本人自食惡果不足惜漠另,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,873評(píng)論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望跃赚。 院中可真熱鬧笆搓,春花似錦、人聲如沸纬傲。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,357評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽嘹锁。三九已至葫录,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間领猾,已是汗流浹背米同。 一陣腳步聲響...
    開封第一講書人閱讀 33,466評(píng)論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留摔竿,地道東北人面粮。 一個(gè)月前我還...
    沈念sama閱讀 48,921評(píng)論 3 376
  • 正文 我出身青樓,卻偏偏與公主長得像继低,于是被迫代替她去往敵國和親熬苍。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,515評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容

  • 簡介 泛型的意思就是參數(shù)化類型袁翁,通過使用參數(shù)化類型創(chuàng)建的接口柴底、類、方法粱胜,可以指定所操作的數(shù)據(jù)類型柄驻。比如:可以使用參...
    零度沸騰_yjz閱讀 3,313評(píng)論 1 15
  • “泛型”這個(gè)術(shù)語的意思是:"適用于許多許多的類型”。如何做到這一點(diǎn)呢焙压,正是通過解耦類或方法與所使用的類型之間的約束...
    王偵閱讀 1,138評(píng)論 0 0
  • 開發(fā)人員在使用泛型的時(shí)候鸿脓,很容易根據(jù)自己的直覺而犯一些錯(cuò)誤抑钟。比如一個(gè)方法如果接收List作為形式參數(shù),那么如果嘗試...
    時(shí)待吾閱讀 1,057評(píng)論 0 3
  • 成功若是很簡單野哭,還要我們這些平民百姓做什么在塔,沒有我們這些平民百姓,又怎么能體現(xiàn)出成功人士的不同拨黔。 相信所有的人在...
    3乘以三閱讀 204評(píng)論 0 1
  • 今日能量早餐 對(duì)應(yīng)脈絡(luò)♂海底輪:紅色 海底輪活躍: 會(huì)有身植大地的感受蛔溃,感覺穩(wěn)定,安全蓉驹,不會(huì)...
    jess橙子閱讀 123評(píng)論 0 0