泛型

泛型有三种常用的使用方式:泛型类,泛型接口和泛型方法。

一:泛型类

public class Generic {
    private K key;
    private V value;

    public void setKey(K key) {
        this.key = key;
    }

    public K getKey() {
        return key;
    }
}
使用:
Generic generic = new Generic();

二:泛型接口

1:定义接口
public interface IGeneric {
     T next();
}

2:定义类
public class ImplGeneric implements IGeneric {

    @Override
    public String next() {
        return null;
    }

}
也可以:
public class ImplGeneric2 implements IGeneric {
    @Override
    public T next() {
        return null;
    }
}

三:泛型方法

public  void show_3(E e) {
    System.out.println(e.toString());
}

public  void printMsg( T... args){
    for(T t : args){
        System.out.println("泛型is " + t);
    }
}

四:泛型通配符

? 表示无界通配符

上界通配符 < ? extends E>

下界通配符 < ? super E>

五:?和 T 的区别

?和 T 都表示不确定的类型,区别在于我们可以对 T 进行操作,但是对 ?不行,比如如下这种 :

// 可以
T t = operate();

// 不可以
?car = operate();

你可能感兴趣的:(Android)