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

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

相关推荐
好家伙VCC37 分钟前
**神经编码新视角:用Python实现生物启发的神经信号压缩与解码算法**在人工智能飞速发展的今天
java·人工智能·python·算法
一灯架构7 小时前
90%的人答错!一文带你彻底搞懂ArrayList
java·后端
踏着七彩祥云的小丑7 小时前
pytest——Mark标记
开发语言·python·pytest
Dream of maid7 小时前
Python12(网络编程)
开发语言·网络·php
W23035765738 小时前
经典算法:最长上升子序列(LIS)深度解析 C++ 实现
开发语言·c++·算法
Y4090018 小时前
【多线程】线程安全(1)
java·开发语言·jvm
不爱吃炸鸡柳8 小时前
Python入门第一课:零基础认识Python + 环境搭建 + 基础语法精讲
开发语言·python
布局呆星8 小时前
SpringBoot 基础入门
java·spring boot·spring
minji...9 小时前
Linux 线程同步与互斥(三) 生产者消费者模型,基于阻塞队列的生产者消费者模型的代码实现
linux·运维·服务器·开发语言·网络·c++·算法
Dxy12393102169 小时前
Python基于BERT的上下文纠错详解
开发语言·python·bert