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

反射是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对象

相关推荐
消失的旧时光-19439 小时前
Android回退按钮处理方法总结
android·开发语言·kotlin
Jabes.yang9 小时前
Java求职面试:从Spring Boot到Kafka的技术探讨
java·spring boot·面试·kafka·互联网大厂
千里马-horse9 小时前
Async++ 源码分析7--parallel_reduce.h
开发语言·c++·async++·parallel_reduce
量化交易曾小健(金融号)9 小时前
Python美股量化交易填坑记录——3.盈透(Interactive Brokers)证券API接口
开发语言·python
canonical_entropy10 小时前
DDD本质论:从哲学到数学,再到工程实践的完整指南之实践篇
java·后端·领域驱动设计
Madison-No710 小时前
【C++】探秘string的底层实现
开发语言·c++
_Power_Y10 小时前
Java面试常用算法api速刷
java·算法·面试
纪莫10 小时前
技术面:Spring (事务传播机制、事务失效的原因、BeanFactory和FactoryBean的关系)
java·spring·java面试⑧股
红衣小蛇妖10 小时前
LeetCode-704-二分查找
java·算法·leetcode·职场和发展
!chen10 小时前
【Spring Boot】自定义starter
java·数据库·spring boot