javapoet:方便快捷地生成.class文件
[toc]
javapoet可以更加快捷地生成字节码,实现原理其实也就是对JavaAPT的封装,然而Javapoet有一个局限性,就是只能生成新的.class文件,却无法修改原有的类,这也是它的一大局限性所在。接下来就让我们看看它的使用方法把。
01 简单使用
使用之前要先引入这个库
1 | compile 'com.squareup:javapoet:1.7.0' |
javapoet是用来生成代码的,需要借助如下几个常用类
| 类名 | 作用 |
|---|---|
| MethodSpec | 代表一个构造函数或方法声明 |
| TypeSpec | 代表一个类,接口,或者枚举声明 |
| FieldSpec | 代表一个成员变量,一个字段声明 |
| JavaFile | 包含一个顶级类的Java文件 |
| ParameterSpec | 用来创建参数 |
| AnnotationSpec | 用来创建注解 |
| ClassName | 用来包装一个类 |
| TypeName | 类型,如在添加返回值类型是使用 TypeName.VOID |
除此之外 JavaPoet提供了一套自定义的字符串格式化规则,常用的有
| 格式化规则 | 表示含义 |
|---|---|
| $L | 字面量 |
| $S | 字符串 |
| $T | 类、接口 |
| $N | 变量 |
