泛型,一个很高端的食材,但是该怎么使用呢,或者什么时候用,
很多人都很困惑,因为我们平时不咋用,但是一些源代码里经常可见,比如说集合。
关于泛型的介绍资料网上比比皆是,最常见的一个案例就是List
我们可以看到List是一个泛型接口 ArrayList又是一个泛型的类
List可以定义不同的类型,但是我们看源码可以看到,就拿get方法举例,获取的对象实际是一个Object对象
最后再强转成一个我们定的那个对象。
那么就很好理解了,泛型类内部使用的基本是围绕Object对象展开的,因为类型不确定,最后对Object强转成实际的类型。
那么很自然的就会有一个想法,Object功能太单一了,就一个toString方法其余都没有,我们实际的开发总遇到的会很复杂,各种功能实现,那么很自然的就有了泛型接口了,我们实际对泛型接口操作,获取的时候直接强转就行,这也就是泛型类泛型接口的使用,这是我的初步认识。
泛型使用场景首先就是类型的多样化,然后向上抽取出共性的,比如定义一个接口,对着共性的接口操作。
网上的参考资料很多,下面给你列了一个
https://www.cnblogs.com/coprince/p/8603492.html