(1) 写一个 Properties 格式的配置文件,配置类的完整名称。 * (2) 写一个程序,读取这个 Properties 配置文件,获得类的完整名称并加载这个类,用 反射 的方式运行

package com.heima.test;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.util.Properties;

public class Test7 {

    /**题目:
        * (1) 写一个 Properties 格式的配置文件,配置类的完整名称。
        * (2) 写一个程序,读取这个 Properties 配置文件,获得类的完整名称并加载这个类,用
        反射 的方式运行 run 方法
     * @param args
     * @throws IOException 
     * @throws ClassNotFoundException 
     * @throws IllegalAccessException 
     * @throws InstantiationException 
     * @throws SecurityException 
     * @throws NoSuchMethodException 
     * @throws InvocationTargetException 
     * @throws IllegalArgumentException 
     */
    public static void main(String[] args) throws IOException, ClassNotFoundException, InstantiationException, IllegalAccessException, NoSuchMethodException, SecurityException, IllegalArgumentException, InvocationTargetException {
        FileInputStream fis = new FileInputStream("properties");
        Properties pp = new Properties();

        pp.load(fis);
        String str = pp.getProperty("className");
        Class clazz = Class.forName(str);
        Object obj = clazz.newInstance();
        Method me = clazz.getMethod("run", null);
        me.invoke(obj, null);

    }

}
发布了110 篇原创文章 · 获赞 4 · 访问量 8万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览