反射常用API

反射常用API

1、类

  • Class clazz = getClass()
    获得描述类的对象
  • clazz.getName()
    获得类的名字,包含包名
  • clazz.getSimpleName()
    获得单独的类名,不包含包名

2、方法

  • Method[] m=getMethods()
    获得所有的public方法,包括继承的
  • Method[] m=clazz.getDeclaredMethods();
    获得自身所有的方法 包括私有的
  • m.getName()
    获得方法的名字
  • Parameter[] params=m.getParameters();

3、方法的参数

  • Parameter[] param=getParameters()
    获得方法的所有参数
  • Class type=getType()
    获得参数的类型
  • paramType.getSimpleName()
    获得参数的简易名字
  • p.getName()
    获得参数的名字
  • Class returnType=getReturnType()
    获得返回值的类型

4、属性

  • Field[] fields=getDeclaredFields()
    获得所有的属性,包括私有的
  • Field[] fields=getFields()
    获得所有public的属性
  • f.getName()
    获得属性的名字
  • Class type=getType()
    获得属性的类型

5、调用方法

  • Method m=getMethod(方法名字,参数类型.Class…)
    获得公共的方法
  • Method m=getDeclaredMethod(方法名字,参数类型.Class…)
    获得全部的方法
  • Invoke(对象,方法的参数…)
    调用该方法
  • field.setAccessible(true);
    获得访问私有成员的权限

6、调用属性

  • Field f=getField(属性名)
    获得指定名字的属性
  • Field f=getDeclaredField(属性名)
  • set(对象,值)
    给属性赋值
  • get(对象)
    获得属性的值
  • field.setAccessible(true);
    获得访问私有成员的权限

7、对象

  • Class.forName(字符串)
    通过字符串对应的类的描述的对象
  • newInstance()
    创建一个对象
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

09小叔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值