读书人

java中种的加载Demo

发布时间: 2012-11-19 10:18:51 作者: rapoo

java中类的加载Demo

?

?

?

package com.cash.utils;import java.lang.reflect.InvocationTargetException;import java.lang.reflect.Method;import com.cash.server.ICommonService;public class ClassUtil {    public static  String exec(String classString, Object[] objects) {        Class<?> convertorClass;        String result = null;        if (null == classString || "".equalsIgnoreCase(classString)) {            return null;        }        try {            convertorClass = Class.forName(classString);            ICommonService convertor = (ICommonService) convertorClass                    .newInstance();            Method istance = convertorClass.getMethod("run",                    java.lang.String.class,java.lang.String.class,java.lang.String.class);            result = (String) istance.invoke(convertor, objects);        } catch (ClassNotFoundException e) {            e.printStackTrace();        } catch (SecurityException e) {            e.printStackTrace();        } catch (NoSuchMethodException e) {            e.printStackTrace();        } catch (IllegalArgumentException e) {            e.printStackTrace();        } catch (IllegalAccessException e) {            e.printStackTrace();        } catch (InvocationTargetException e) {            e.printStackTrace();        } catch (InstantiationException e) {            e.printStackTrace();        }        return result;    }}
package com.cash.server;public interface ICommonService {        public String run(String para1, String para2, String para3);    }

package com.cash.server;public class AService implements ICommonService {    @Override    public String run(String para1, String para2, String para3) {                return para1 + ":" + para2 + ":" + para3;    }}
?
package com.cash.server;import com.cash.utils.ClassUtil;public class Main {        public static void main(String[] args) {        Object[] objects = {"I Am "," The " , " Best"};        String result = ClassUtil.exec("com.cash.server.AService", objects);        System.out.println(result);    }}
??

?

1 楼 freish 2011-06-10 不怕新手贴啊 2 楼 chakey 2011-06-10 freish 写道不怕新手贴啊
木有关系 3 楼 whao189 2011-06-10 楼主在学习 反射?还是?

读书人网 >编程

热点推荐