前置知识: Java

泛型进阶

1 minAdvanced2026/6/14

泛型擦除、通配符与边界

1. 型擦除

List<String> strings = new ArrayList<>();
List<Integer> ints = new ArrayList<>();
// 运行时都是 ArrayList,泛型信息被擦除

2. 通配符

// 上界通配符 — 只读
void printList(List<? extends Number> list) { }

// 下界通配符 — 只写
void addNumbers(List<? super Integer> list) { }

// PECS 原则:Producer Extends, Consumer Super