下面由java学习教程栏目给大家介绍一个java反射案例,希望对需要的朋友有所帮助!
java反射案例
需求
写一个框架,不能改变该类的任何代码的前提下,可以帮我们创建任意类的对象,并且执行其中任意方法
使用
配置文件
反射
步骤
将需要创建的对象的全类名和需要执行的方法定义在配置文件中
在程序中加载读取配置文件
使用反射技术来加载类文件进内存
创建对象
执行方法
配置文件
classname=studentmethodname=sleep
代码
import java.io.inputstream;import java.lang.reflect.method;import java.util.properties;/** * @author tanglei * @date 2020/6/11 3:10 下午 */public class reflecttest { public static void main(string[] args) throws exception { student s = new student(); properties pro = new properties(); //获取配置文件的路径 classloader classloader = reflecttest.class.getclassloader(); inputstream is = classloader.getresourceasstream("pro.properties"); pro.load(is); string classname = pro.getproperty("classname"); string methodname = pro.getproperty("methodname"); //加载类进内存 class cla = class.forname(classname); object obj = cla.newinstance(); //加载方法进内存 method method = cla.getmethod(methodname); method.invoke(obj); }}
以上就是java反射案例(不要错过)的详细内容。