一、泛型
泛型类
泛型接口
泛型方法
extends 派生 限定类型变量 A extends Comparable
泛型的约束 1、不能实例化类型变量 2、静态域或者方法里面不能引用类型变量(静态方法可以)
泛型类型的继承规则1、泛型类可以基础或者扩展其他泛型类
通配符类型 (通常在方法的参数上)
? extends A 上界 用于安全访问数据 允许get 不允许set
?super A 下界 用于安全写入 允许set A 的子类 get的返回Object类型
二、注解
元注解(注解上的注解)
@Target 作用域 TYPE,FIELD,METHOD,PARAMETER,CONSTRUCTOR,LOACL_VARIABLE
@Retention
1、source 相关技术APT(Annotation Processor Tools)
1) 继承 AbstractProcessor
2) 配置META-INF/services:
- 在
resources/META-INF/services
目录下创建名为javax.annotation.processing.Processor
的文件,并在文件中添加注解处理器的全限定名。
2、class 字节码增强
3、runtime 反射