JAVA反射笔记

反射简介

在没有加载到内存之前,每一个类都作为.class文件保存在磁盘中,一旦加载到jvm内存,会在方法区创建一个Class对象,保存这个类的所有信息。

通过反射方法,可以在程序运行过程中,动态获取类信息,入构造方法,属性,名称,等。

class 入口类

在这里插入图片描述

常用api
  • 获取class对象
    • Class.forName(“com.xx.Pet”)
    • 类型.class,列如 Pet.class.
    • 对象.getClass,例入pet.getClass90.
  • newInstance() 创建对象
  • 访问属性
  • 调用方法
  • 获取注解
  • 获取类加载器
构造器类Constructor

在这里插入图片描述

常用api
  • newInstance(Object … initargs) 根据构造参数 创建对象
Field 类

在这里插入图片描述

常用api

1.获取变量的类型:

  • Field.getType():返回这个变量的类型
  • Field.getGenericType():如果当前属性有签名属性类型就返回,否则就返回 Field.getType()
  • isEnumConstant() : 判断这个属性是否是枚举类

2.获取成员变量的修饰符:

  • Field.getModifiers() 以整数形式返回由此 Field 对象表示的字段的 Java 语言修饰符

3.获取和修改成员变量的值:

  • getName() : 获取属性的名字
  • get(Object obj) 返回指定对象obj上此 Field 表示的字段的值
  • set(Object obj, Object value) 将指定对象变量上此 Field 对象表示的字段设置为指定的新值
Method 类

在这里插入图片描述

常用api
  • invoke(Object obj, Object… args) 执行指定对象obj的方法
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值