5月8日

研究了泛型的底层实现机制。Java 中的泛型属于编译时技术,运行时会被擦除为原始类型(Raw Type)。这意味着 List 和 List 在字节码层面实质都是 List。
通过反编译验证了擦除规则:无边界类型擦除为 Object,有上界(如 )则擦除为 Number。这解释了为何不能使用 new T() 或 instanceof T
同时复习了通配符 ? extends T 与 ? super T 的 PECS 原则(Producer Extends, Consumer Super)。前者用于读取场景,后者更适合写入。写了一段复制 List 的通用方法,因类型受限而理解了编译器的严格检查是为了保证类型安全。虽然擦除有些局限,但也成就了与旧代码的兼容性。

posted @ 2026-05-08 23:21  真手凛  阅读(8)  评论(0)    收藏  举报