文章目录
一、泛型擦除
二、泛型的上界通配符
三、泛型的下界通配符
一、泛型擦除
----
泛型只保留到 编译期 , 在 编译完毕后 , 泛型就不存在了 ;
在运行时 , 通过反射 , 调用泛型类 , 即使违反了泛型规则 , 也能进行相关操作 , 这是因为...在运行时 , 已经没有泛型相关的限制 , 泛型限制在编译时就已经被擦除了 ;
但是 泛型的信息 , 保存在了常量表中 , 仍然可以获取到 ;
泛型擦除 是为了 泛型可以兼容 老版本的 JDK 而设计的...,
泛型是 JDK 5 加入的 , 如果添加了泛型 , 导致字节码的格式改变 , 必然导致之前版本的 JDK 无法运行有泛型的字节码程序 ;
给定一个 Demo.java 类 , 其中定义了一个 data6 = new Data();
报错信息 : 传入不符合要求的泛型的报错信息 ;
三、泛型的下界通配符 <?