程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> J2SE >> 在Eclipse 3.1中體驗J2SE 5.0的新特性: 第三部分 :范型(2)

在Eclipse 3.1中體驗J2SE 5.0的新特性: 第三部分 :范型(2)

編輯:J2SE

下面通過一個列表的例子來具體說明如果聲明范型類和類型參數的用法.
 
清單3.2.2, 范型列表
 
public class GenList <T>{
    private T[] elements;
    private int size = 0;
    private int length = 0;
    public GenList(int size) {
      elements = (T[])new Object[size];
      this.size = size;
    }
    public T get(int i) {
      if (i < length) {
        return elements[i];
      }
      return null;
    }
 
   public void add(T e) {
      if (length < size - 1)
        elements[length++] = e;
    }
 }
 
在列表的例子中, 類型參數T被用來表示列表中的元素的類型, 即, 這個列表中的元素 是T類型的.
 
在使用這個列表時, 這個類型參數T會被具體的類型所替代.
 
注意, 由於T時類型參數不是具體的類, 所以不能使用new操作符創建T的對象,例如new T(), 或者, new T[10].
 
3.2.2 范型接口
 
在J2SE 5.0中, 不僅僅可以聲明范型類, 也可以聲明范型接口, 聲明范型接口和聲明 范型類的語法類似, 也是在接口命稱後面加上<T>. 例如,
 
清單3.2.3, 范型接口
 
public interface GenInterface<T> {
    void func(T t);
 }
 
3.2.3聲明多個類型參數的范型類或者接口
 
在聲明范型類的時候, 可是使用多個類型參數. 多個類型參數之間用逗號分開, 例 如,
 
清單3.2.4, 多個類型參數的范型類
 
public class GenMap<T, V> {}
 
Eclipse 3.1的類創建向導支持創建范型類, 如下圖所示,
 
圖3.2.1 使用類向導創建范型類
 


本文來自編程入門網:http://www.bianceng.cn/Programming/Java/201104/25425_2.htm

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved