publicclassGeneric<T>{//key这个成员变量的类型为T,T的类型由外部指定 private T key;publicGeneric(T key){//泛型构造方法形参key的类型也为T,T的类型由外部指定this.key = key;}public T getKey(){//泛型方法getKey的返回值类型为T,T的类型由外部指定return key;}}
泛型的高级用法
// 限制泛型可用的类型publicclassLimitClass<?extendsList>{// do something}// 使用类型通配符
A<?extendsList> a = null;
a =newA<ArraList>();// 限定参数的类型publicvoidtest(A<?extendsList> a){}
枚举类型:取代以往定义常量的方式,同时枚举类型还提供程序编译时进行检查的功能// 以往定义常量的方法public interface Constants{ public static final int Constants_A = 1; public static final int Constants_B = 2;}// 用枚举代替以往的方法public enum...