A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 大梅 黑马帝   /  2012-1-12 22:21  /  2583 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

视频里老师讲过可以用反射得到标记在类上的注解类,那么用反射的方式能得到标记在方法上的注解类吗?

4 个回复

倒序浏览
差不多吧  if(方法名.class.isAnnotationPresent(注解名.class){
      注解名.class  zhujie =(注解名)方法名.class.getAnnotation(方法名.class);
}
回复 使用道具 举报
本帖最后由 大梅 于 2012-1-13 00:39 编辑
李娟 发表于 2012-1-12 22:51
差不多吧  if(方法名.class.isAnnotationPresent(注解名.class){
      注解名.class  zhujie =(注解名)方 ...


你试过吗?method没有getAnnotation方法,再说你写的method怎么能有class属性呢?
回复 使用道具 举报
注解类:自定义的可以成为java程序标记的类

@Interface ItcastAnnotation{

}

定义了注解类后,可以在其他类上应用此注解类:

@ItcastAnnotation                //此处做了注解的标记

public class AnnotationTest{

public static void main(String[] args) {

if(AnnotationTest.class.isAnnotationPresent(ItcastAnnotation.class))//判断AnnotationTest类上是否加了ItcastAnnotation类型的注解
  {
   ItcastAnnotation itcastAnnotation = AnnotationTest.class.getAnnotation(ItcastAnnotation.class);
   System.out.println(itcastAnnotation);
  }

}

}



@Rentention(RententionPolicy)

这是对注解类的注解,它可以标记对此注解类的存在时期,RententionPolicy为枚举类型,它的三个值为:SOURCE为源代码时,CLASS为编译时,RUNTIME为运行时
回复 使用道具 举报
王_涛 发表于 2012-1-13 19:35
注解类:自定义的可以成为java程序标记的类

@Interface ItcastAnnotation{

这不是我想要的答案,看好了再答,不要灌水
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马