Java高级知识复盘之反射

本文详细介绍了Java中的反射机制,包括其在程序执行过程中的作用,如何获取类、属性、构造器以及如何创建对象和调用方法。通过使用如Class.forName(), getFields(), getConstructors()等方法,开发者可以在运行时动态地获取和操作类的信息。反射在实现动态编程、插件系统等方面有着重要应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Java高级知识复盘之反射

  • 反射:运行过程中,动态的获取类的信息以及对类进行操作的机制反射机制

  • java程序的执行:

    • 1,编译阶段 源文件.java 经过编译器编译 编译为.class文件(字节码文件 二进制文件)

    • 2, 运行阶段 字节码文件被 类加载器 加载到JVM内存(方法区) 解释为机器指令 然后执行

  • 对象 类型Class 类对象;

  • 跨平台(一次编译 随处运行)

反射的使用

1,获取类

2,获取属性,变量

3,获取构造器

4,创建对象或调用对象

常用方法

获取类

        获取类对象的方法

        getClass()

        Class.forName("全路径类名");

获取属性

getFields(): 获取public修饰的成员变量对象,包括从父类继承下来的

getField() :获取public修饰的成员变量对象,包括从父类继承下来的 ;指定名称进行获取

getDeclaredFields(): 只获取本类声明的成员变量(任意权限修饰符都可以) 不包括从父类继承下来的

getDeclaredField(): 只获取本类声明的成员变量(任意权限修饰符都可以) 不包括从父类继承下来的;指定名称进行获取

setAccessible():打破封装

获取构造器

getConstructors():获取public修饰的构造器

getConstructor(): 获取public修饰的构造器

getDeclaredConstructors():获取本类型的所有构造器

getDeclaredConstructor():获取本类型对应参数的构造器

调用对象

getMethods():获取public修饰的方法 包括从父类继承的

getMethod():获取public修饰的方法 包括从父类继承的

getDeclaredMethods(): 获取本类声明的方法(任意权限修饰符都可以)

getDeclaredMethod(): 获取本类声明的方法(任意权限修饰符都可以)

invoke():调用对应参数的方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值