前言
反射机制指的是在动态运行时,对于任意一个类可以获取其所有的方法、变量,无论是public、protected、还是private。
反射的作用:
1.获取某些类的构造方法、变量,调用其私有方法等。
2.增加代码的灵活性,很多主流框架都是含反射技术的。
创建一个测试实例
如何通过反射获取类的构造方法
通过反射技术获取类的构造方法的主要方法有四个,如图:
图中的四个方法很好分辨:
1.getConstructor和getDeclaredConstructor的方法名中间相差一个单词 Declared,区别在与getConstructor是获得 public 权限的方法而getDeclaredConstructor是获取所有权限的方法。
2.还有带s的方法名,则是获取全部构造方法而不是指定。
获取类中所有的构造方法,例:
获取类中指定的构造方法,例:
使用方式:
如何通过反射获取类的变量
其实通过反射技术获取类的变量的主要方法,和获取构造方法中的四个方法类似,主要是getField、getDeclaredField、getFields和getDeclaredFields,不用说,看方法名,大家应该就清楚了吧。
获取类中所有的变量,例:
获取类中指定的变量,例:
使用方式:
如何通过反射获取类的方法
获取类中所有的方法,例:
获取类中指定的方法,例:
使用方式:
2021年1月22日程序猿小钟带着反射技术到此一游~
网友评论