JavaWeb_day01注解和反射

注解的好处:

1可以操作对象

2解除耦合

1获取类对象有3种方式

\1. Class.forName
\2. Hero.class
\3. new Hero().getClass()

2获取Class对象功能:

  • 获取功能

    1. 获取成员变量们

      • Field[] getFields(); 获取public修饰的成员变量,

      • Field getField(String name) 获取指定名称的

      • Field[] getDeclaredFields() 获取所有的成员变量,不考虑修饰符

      • Field[] getDeclaredFields( String name)

        • Field成员变量:
          • 设置值 void set(Object,obj,Object value)
          • 获取值 get ( Object obj)
          • 忽略访问权限修饰符的安全检查
            • setAccessible(ture) 暴力反射
    2. 获取构造们

      1. 作用,创建一个类的对象,
      2. Constructor
        1. ​ **** new Constructor().getConstructor()
        2. new Class().newInstance();使用空餐构造方法时可以简化用这个创建对象,
    3. 获取成员方法们

      1. 获取他的目的或者作用,;执行方法
        1. method.invoke§;执行方法
        2. String getName()
    4. 获取类名

      String classname= new Hero().getClass().getName();

注解 Annotation

  • @Overtide重写

  • @Deprecated 标注过时

  • @SuppressWarnings 一直警告

本质:是一个接口,默认继承了Annotion接口

元注解:

  • @Target 描述注解能够作用的位置
  • @Retetion 描述被 保留的时间到什么为止
  • @Documented 是否被抽取到api文档中.
  • @Inherited描述是否被子类继承
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值