使用:
Java通过Interface 接口名<K,T,V>{}定义泛型接口,其中K,T,V是泛型接口中可以使用的泛型类型。
细节:
1.接口属性不能使用泛型:
接口中的属性都是static修饰的,而static修饰的属性是不能用泛型的,因为static修饰的属性在类加载时就会存在,但是这个时候编译器是不知道泛型的具体类型的,无法给它分配内存空间,所以接口的属性不能用泛型,并且static方法也不能用泛型,只有接口的普通方法可以用泛型。
2.泛型接口的类型在接口被继承或者接口被实现时指定。
在继承时指定具体类型:
Interface 接口名1 extends 接口名2<具体类型1,具体类型2>{},其中具体类型可以是String,Integer等。
在实现时指定具体类型:
class 类名 implements 接口名<具体类型1,具体类型2>{},其中具体类型可以是String,Integer等。
3.如果在继承或者实现时不指定泛型的具体类型,则默认为Object.