一、泛型入门
1.1基础概念
Java泛型是JDK 5中引入的一个新特性,它提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型
泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。这意味着你可以使用一套代码来处理多种不同类型的数据
1.2JDK中自带的泛型类和用法
二、自定义泛型设计
2.1 泛型类
ArrayList<E>,E表示元素Element;
HashMap<K,V>, ,K表示Key,V表示Value;
自定义泛型变量常用T,T表示Template。
2.2泛型类的调用
2.3泛型方法
2.4泛型接口
三、泛型类型限定
3.1泛型类的继承
3.2上限界定符
上限界定符,Pair<? extends S>
3.3下限界定
3.4泛型PECS原则
- Producer Extends, Consumer Super
-要从泛型类读取类型T的数据,并且不能写入,可以使用?extends 通配符;(Producer Extends,泛型类是生产者,往外输出东西)
-如果要向泛型类写入类型T的数据,并且不需要读取,可以使用?super 通配符;(Consumer Super,泛型类是消费者,往内增加东西)
-如果既想写入又想读出,那就不用通配符
3.5无限定泛型
四、泛型实现的本质和约束
4.1类型擦除
JDK的版本是向后兼容的即低版本的class文件可以在高版本的JDK上运行
因此,JVM里面没有泛型对象,而是采用类型擦除技术,只有普通的类和方法
4.2无限定的
4.3有限定的
4.4自动转换(自动桥方法)
4.5泛型的约束
五、Java类型协变和逆变
5.1面向对象语言
文章来源:https://www.toymoban.com/news/detail-683251.html
5.2JAVA数组
文章来源地址https://www.toymoban.com/news/detail-683251.html
5.3java泛型
5.4复合
到了这里,关于java入坑之泛型的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!