|
泛型类和泛型接口详解 关于泛型我们这里就不多说了,在上次讲解中已经详细说明了.接下来,咱们先简单的了解一下泛型类和泛型方法: 泛型类其实就是把泛型定义在方式上,而泛型接口也是一样把泛型定义在接口上.这样定义就是为了规范对同种数据类型的数据的操作.
1.泛型类和泛型接口,从定义来说很类似: 定义泛型类:publicclass Student<T>{} 定义泛型接口:publicinterface swim<T>{} 2.泛型类和泛型接口,在使用上也是比较类似的: 泛型类在被实例化的时候确定泛型的具体数据类型. 泛型接口在被实现的时候确定泛型的具体数据类型.
接着就拿接口泛型来举例(泛型类同理):
定义一个泛型接口Animal: public interface Animal<T>{} 实现泛型接口: 第一种方式:接口中定义的泛型实现类中必须要存在,不然会报错 public class Dog<T> implementsAnimal<T>{} 第二种方式:实现类本身可以有自己的泛型 public class Dog<T,E> implements Animal<T>{} 第三种方式:实现类本身自己的泛型,可以直接指定具体的数据类型 public class Dog<T,String> implements Animal<T>{} 第四种方式:在实现接口时,可以直接给接口指定具体的泛型,此时实现类中不需要再指定泛型.同时也可以拥有自己的泛型(但没什么意义) public class Dog implements Animal<String> {}
|