未验证 提交 bdca72a8 编写于 作者: H Hollis 提交者: GitHub

Merge pull request #95 from billwang22/master

Update annotion-and-reflect.md
......@@ -72,8 +72,8 @@ public class MyTest {
Class clazz = obj.getClass();
Field[] declareFields = clazz.getDeclaredFields();
for (Field field:declareFields) {
//检查该是否使用了某个注解
if(clazz.isAnnotationPresent(MyAnno.class)){
//检查该字段是否使用了某个注解
if(field.isAnnotationPresent(MyAnno.class)){
MyAnno anno = field.getAnnotation(MyAnno.class);
if(anno!=null){
String fieldName = field.getName();
......@@ -110,4 +110,4 @@ Person(stra=有注解, strb=无注解, strc=无注解)
当开发者使用了Annotation 修饰了类、方法、Field 等成员之后,这些 Annotation 不会自己生效,必须由开发者提供相应的代码来提取并处理 Annotation 信息。这些处理提取和处理 Annotation 的代码统称为 APT(Annotation Processing Tool)。
注解的提取需要借助于 Java 的反射技术,反射比较慢,所以注解使用时也需要谨慎计较时间成本。
\ No newline at end of file
注解的提取需要借助于 Java 的反射技术,反射比较慢,所以注解使用时也需要谨慎计较时间成本。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册