Java基礎學習——泛型

來源:互聯網
上載者:User

標籤:gen   code   自訂格式   個數   ret   ack   over   函數   generate   

一、泛型方法

 1 /** 2  3 自訂泛型:自訂泛型可以理解為是一個資料類型的預留位置,或者理解為是一個資料類型的變數。 4  5 泛型方法: 6 泛型方法的自訂格式:修飾符<聲明自訂泛型>傳回值類型    函數名稱(形參列表) 7 在自訂泛型方法上泛型的具體類型是調用該方法的時候傳入參數的類型所確定的 8  9  */10 public class demo1 {11     public <T>T printf (T t){12         return t;13     }14     public static void main(String[] args) {15         demo1 demo1 = new demo1();16         Integer integer = demo1.printf(100);17         String string = demo1.printf("wz");18         System.out.println(string);19         System.out.println(integer);20     }21 }

二、泛型類

 1 package cn.itcast.generic; 2 /** 3  * 在類上自訂泛型 如果建立該類的對象時, 沒有指定泛型的具體類型 那麼預設的是object類型 4  * 在類上自訂的泛型 具體的資料類型是在建立對象的時候指定的 5  *  6  */ 7 public class demo2 { 8     public static void main(String[] args) { 9         MyList<String > myList = new MyList();10         myList.add("add");11 //        myList.add(123);12     }13 }14 15 class MyList<T>{16     //建立對象的時候不能直接用泛型直接建立17     //T[] arr = new T[10];18     Object[] arr = new Object[10];19     int index = 0;20     public MyList() {21         22     }23     public void add(T oT){24         arr[index++] = oT;25         26     }27 }

 三、泛型介面

 1 /** 2  3 泛型介面: 4  5 泛型介面的定義格式:interface 介面名 <聲明自訂的泛型>{} 6 在介面上自訂泛型注意事項: 7 1 在介面上自訂泛型 具體的資料類型是 在實現介面的時候 指定的。 8 2 如果介面自訂了泛型 在實現該介面的時候沒有指定資料類型 那麼該介面預設 是object類型 9 10  如果11  */12 13 interface GenericDao<T>{14     public void add(T t);15     16     public void remove(T t);17 }18 19 public class demo3 implements GenericDao<String >{20 21     @Override22     public void add(String t) {23         // TODO Auto-generated method stub24         25     }26 27     @Override28     public void remove(String t) {29         // TODO Auto-generated method stub30         31     }32 }33 class demo4 implements GenericDao{34 35     @Override36     public void add(Object t) {37         // TODO Auto-generated method stub38     }39 40     @Override41     public void remove(Object t) {42         // TODO Auto-generated method stub43     }44 }

 三、泛型介面

 1 /** 2  3 泛型介面: 4  5 泛型介面的定義格式:interface 介面名 <聲明自訂的泛型>{} 6 在介面上自訂泛型注意事項: 7 1 在介面上自訂泛型 具體的資料類型是 在實現介面的時候 指定的。 8 2 如果介面自訂了泛型 在實現該介面的時候沒有指定資料類型 那麼該介面預設 是object類型 9 10  如果11  */12 13 interface GenericDao<T>{14     public void add(T t);15     16     public void remove(T t);17 }18 19 public class demo3 implements GenericDao<String >{20 21     @Override22     public void add(String t) {23         // TODO Auto-generated method stub24         25     }26 27     @Override28     public void remove(String t) {29         // TODO Auto-generated method stub30         31     }32 }33 class demo4 implements GenericDao{34 35     @Override36     public void add(Object t) {37         // TODO Auto-generated method stub38     }39 40     @Override41     public void remove(Object t) {42         // TODO Auto-generated method stub43     }44 }

 

Java基礎學習——泛型

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.