• 技术文章 >Java >java教程

    Java反射案例(不要错过)

    藏色散人藏色散人2020-06-12 13:25:37转载638
    下面由java学习教程栏目给大家介绍一个Java反射案例,希望对需要的朋友有所帮助!

    Java反射案例

    需求

    写一个"框架",不能改变该类的任何代码的前提下,可以帮我们创建任意类的对象,并且执行其中任意方法

    使用

    配置文件

    反射

    步骤

    将需要创建的对象的全类名和需要执行的方法定义在配置文件中

    在程序中加载读取配置文件

    使用反射技术来加载类文件进内存

    创建对象

    执行方法

    配置文件

    16fc0cac996933f8eb1f83985d9972a.png

    className=Student
    methodName=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反射案例(不要错过)的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:cnblogs,如有侵犯,请联系admin@php.cn删除
    专题推荐:Java
    上一篇:java中如何将String类型转为double类型 下一篇:为什么要用ssm框架
    大前端线上培训班

    相关文章推荐

    • java中静态和非静态有什么区别• java主要应用在哪些方面• java中final关键字的作用是什么• java中this关键字的四种用法是什么

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网