什么是反射以及反射的应用及例子

反射是Java中框架设计的核心,通过对类的构造、属性、方法等数据的获取提供抽象的底层构建。

反射机制:

反射需要先获得类的class字节码,由JVM类加载器(ClassLoader)负责加载,并在内存中缓存class的内部结构。借助于Java的反射机制允许快速对类的结构数据进行访问和调用

第三种方法的使用:

Class objClass = Class.forName("com.igeek.pojo.User")

Object obj = objClass.newInstance()

获取类的构造方法

getConstructor(Class<T>... parameterTypes)

getConstructors()

获取类的属性

getField(String fieldName)

getFields()

获取类的方法

getMethod(String methodName,Class<T>...parameterType)

getMethods()

获取类的接口

getInterfaces()

获取类的超类

getSuperclass()

例子:

使用反射动态解析javax.swing.JFrame类

使用反射实例化该对象

使用反射动态解析该类的构造方法,获得构造方法的参数数量和类型

并使用无参构造以及带有String的构造

方法来实例化JFrame对象

相关推荐
counting money几秒前
HttpServlet基础
java
吴声子夜歌3 分钟前
JavaScript——面向对象
java·开发语言·javascript
钱多多_qdd3 分钟前
第一次使用mac,安装java相关的东西
java·python·macos
阿kun要赚马内8 分钟前
Python五类数据容器的对比和通用方法
开发语言·python
RE-19018 分钟前
Polars:告别 Pandas 性能瓶颈,用 Rust 驱动的 DataFrame 库处理亿级数据
开发语言·rust·pandas·polars·ai生成
波波00711 分钟前
每日一题:请解释.NET 中的泛型约束是什么
java·面试·.net
2301_7938046912 分钟前
C++中的备忘录模式
开发语言·c++·算法
好家伙VCC13 分钟前
# 发散创新:用 Rust 实现高性能事件驱动架构的实践与优化 在现代软件系统中,**事件驱动编程模型**已经成为构
java·开发语言·python·架构·rust
2501_9454235416 分钟前
C++编译期多态实现
开发语言·c++·算法