认识泛型

  • Post author:
  • Post category:其他


一、泛型的概念

泛型实现了

参数化类型

的概念,使代码可以用于多种类型

二、泛型的目的

  1. 希望类和方法能够具备最广泛的表达能力
  2. 用来指定容器要持有什么类型的对象,而且由编译器来保证类型的正确性

三、泛型的使用

  1. 普通泛型类

    public class NormalGenericsClass<T> {
        private T key;
        public Generics(T key){
            this.key = key;
        }
        public T getKey() {
            return key;
        }
        public void setKey(T key) {
            this.key = key;
        }
    }
    
    
    // 泛型类实例
    NormalGenericsClass<Integer> a = new NormalGenericsClass<Integer>(0);
    // Java7 开始支持省略后面的参数类型
    NormalGenericsClass<Integer> a = new NormalGenericsClass<>(0);
  2. 普通泛型接口

    // Java中的 Comparator接口
    public interface Comparator<T> {
         
    
        int compare(T o1, T o2);
    
        boolean equals(Object obj);
    }
    
    // 接口实现例子 java.text.Collator
    public abstract class Collator implements java.util.Comparator<Object>, Cloneable
    {
         
        //...主体代码
    }
  3. 普通泛型方法

    private <T> int normalGenericsMethod(Generics<T> i){ 
    // <T> 表示声明 T为泛型,写在返回值类型之前
    // 也可以声明多个泛型,如:<K,V>
        return 



版权声明:本文为nooices原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。