了解一下反射

本文详细介绍了Java反射机制,包括反射获取类对象、构造器对象、成员变量对象和方法对象。通过反射,可以在运行时动态获取类信息并操作,打破封装性和泛型约束,广泛应用于框架设计。
摘要由CSDN通过智能技术生成

目录

反射概述

反射的关键:

 反射获取类对象

 总结:

反射获取构造器对象

student类

getConstructors()

getDeclaredConstructors() 

getConstructor(Class... parameterTypes)

 getDeclaredConstructor(Class... parameterTypes)​编辑

 创建对象​编辑

​编辑 总结

 反射获取成员变量对象

Student类 

getDeclaredFields()

 getDeclaredField(String name)

 取值、赋值

总结 

 反射获取方法对象

Dog类 

 getDeclaredMethods()

getDeclaredMethod(String name, Class... parameterTypes)

总结

 ​编辑

反射的作用-绕过编译阶段为集合添加数据

 总结

总结

反射的作用?


反射概述

① 反射是指对于任何一个Class类,在“运行的时候”都可以直接得到这个类全部成分。

② 在运行时,可以直接得到这个类的构造器对象:Constructor。

③ 在运行时,可以直接得到这个类的成员变量对象:Field。

④ 在运行时,可以直接得到这个类的成员方法对象:Method。

⑤ 这种运行时动态获取类信息以及动态调用类中成分的能力称为Java语言的反射机制。

反射的关键:

反射的第一步都是先得到编译后的Class类对象,然后就可以得到Class的全部成分。

 

 反射获取类对象

 总结:

1.反射的第一步是什么?

获取Class类对象,如此才可以解析类的全部成分。

2.获取Class类的对象的三种方式

① Class c1 = Class.forName("全类名");

② Class c2 = 类名.class;

③ Class c3 = 对象.getClass();

反射获取构造器对象

 

student类

getConstructors()

获取全部构造器(只能定位public修饰的)

 

getDeclaredConstructors() 

 获取全部构造器 

 

getConstructor(C

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值