Java 泛型速查手册
首页
›
Java手册
›
Java 泛型
› 类型通配符
Java
泛型
:上界下界
PECS 原则。
图 8:Java 泛型:上界下界(1080×1440 速查卡片)
⬆️上界通配符 extends
List<? extends Number>
只接受 Number 及其下层子类类型,
如 Integer、Double。
传入 List<String> 会编译报错。
UpperBound.java
public static void getUperNumber(List data) {
System.out.println(data : + data.get(0));
}
getUperNumber(age); // OK List
getUperNumber(number); // OK List
// getUperNumber(name); // 编译错误:String 不是 Number 子类
⬇️下界通配符 super
List<? super Number>
只接受 Number 及其上层父类类型,
如 Object 类型的实例。
🎯 PECS 原则
Producer Extends:只往外取数据(生产者)用 ? extends T
Consumer Super:只往里存数据(消费者)用 ? super T
又取又存就别用通配符。
2. 总览
3. 泛型方法
4. 泛型方法
5. 有界类型参数
6. 泛型类
7. 泛型类
9. 类型擦除
10. 总结
← 上一篇
泛型类
下一篇 →
类型擦除
Java Applet
Java 常用类库
Java 9 新特性
Java MySQL 连接
Java 8 新特性
Java 实例
Java 文档注释
Java 多线程
Java 发送邮件
Java 网络编程
Java 序列化
Java NIO Files
Java Object 类
Java 迭代器
Java HashMap
Java HashSet
Java LinkedList
Java ArrayList
Java 集合框架
Java 数据结构
Java 封装
Java 接口
Java 枚举
Java 包
Java 反射
Java 抽象类
Java 多态
Java 重写与重载
Java 继承
Java 异常处理
Java StringBuffer
Java String
Java Character
Java Number & Math
Java 正则表达式
Java 日期时间
Java 数组
Java 方法
Java 流与文件IO
Java Scanner 类
Java 构造方法
Java 条件语句
Java 循环结构
Java switch case
Java 运算符
Java 修饰符
Java 变量命名规则
Java 变量类型
Java 基本数据类型
Java 对象和类
Java 注释
Java 基础语法