|
![]() |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
package com.elink.util; /* * <p>Company: 凌科软件 www.elingke.com </p> * @author liubaojun * @version 1.0 * Created on 2004-11-29 * 来源于 elinkBSP 部分源代码 */ import java.lang.reflect.*; import java.net.*; public class ClassUtil { /** @param strClassName @param argsType @param args @return Object @throws java.lang.NoSuchMethodException @throws java.lang.SecurityException @throws java.lang.ClassNotFoundException @throws java.lang.InstantiationException @throws java.lang.IllegalAccessException @throws java.lang.IllegalArgumentException @throws java.lang.reflect.InvocationTargetException */ public static Object loadClass(String strClassName, Class[] argsType, Object[] args) throws NoSuchMethodException, SecurityException, ClassNotFoundException, InstantiationException, IllegalAccessException, IllegalArgumentException, InvocationTargetException { Object returnObj = null; Class className = null; Constructor constructor = null; className = Class.forName(strClassName); constructor = className.getConstructor(argsType); returnObj = constructor.newInstance(args); return returnObj; } /** @param strClassName @return Object @throws java.lang.NoSuchMethodException @throws java.lang.SecurityException @throws java.lang.ClassNotFoundException @throws java.lang.InstantiationException @throws java.lang.IllegalAccessException @throws java.lang.IllegalArgumentException @throws java.lang.reflect.InvocationTargetException */ public static Object loadClass(String strClassName) throws NoSuchMethodException, SecurityException, ClassNotFoundException, InstantiationException, IllegalAccessException, IllegalArgumentException, InvocationTargetException { return loadClass(strClassName, null, null); } public static Object loadClass(String strClassName, Object defObj) { try { return loadClass(strClassName, null, null); } catch( Throwable ex ) { LogUtil.logException( ex ); } return defObj; } /** @param classObject @param strMethodName @param argsType @param args @return Object @throws java.lang.NoSuchMethodException @throws java.lang.SecurityException @throws java.lang.IllegalAccessException @throws java.lang.IllegalArgumentException @throws java.lang.reflect.InvocationTargetException */ public static Object invokeMothod(Object classObject, String strMethodName, Class[] argsType, Object[] args) throws NoSuchMethodException, SecurityException, IllegalAccessException, IllegalArgumentException, InvocationTargetException { Method concatMethod = classObject.getClass().getMethod(strMethodName, argsType); return concatMethod.invoke(classObject, args); } /** @param classObject @param strMethodName @return Object @throws java.lang.NoSuchMethodException @throws java.lang.SecurityException @throws java.lang.IllegalAccessException @throws java.lang.IllegalArgumentException @throws java.lang.reflect.InvocationTargetException */ public static Object invokeMothod(Object classObject, String strMethodName) throws NoSuchMethodException, SecurityException, IllegalAccessException, IllegalArgumentException, InvocationTargetException { return invokeMothod(classObject, strMethodName, null, null); } /** @param classObject @param strFieldName @return Object @throws java.lang.NoSuchFieldException @throws java.lang.SecurityException @throws java.lang.IllegalArgumentException @throws java.lang.IllegalAccessException */ public static Object getFieldValue(Object classObject, String strFieldName) throws NoSuchFieldException, SecurityException, IllegalArgumentException, IllegalAccessException { Object retObj = null; Field field; field = classObject.getClass().getDeclaredField(strFieldName); retObj = field.get(classObject); return retObj; } /** @param className @return String */ public static String whereClass(String className) { String retStr = null; if (!className.startsWith("/")) { className = "/" + className; } className = className.replace(\\\'.\\\', \\\'/\\\'); className = className + ".class"; java.net.URL classUrl = getResource(className); if (classUrl != null) { String str = classUrl.getFile(); retStr = str; } return retStr; } /** @param name @return java.net.URL */ public static URL getResource(String name) { return ClassUtil.class.getResource(name); } public static void compiler( String targetDir, String filename, String classpath ) throws Exception { // javac -d E:/test -classpath C:/work/WEB-INF/lib/bss.jar e:/test/TestVector.java String str = "javac -d "+targetDir+" -classpath "+classpath+" "+filename; LogUtil.logInfo( str ); Runtime runtime = Runtime.getRuntime(); Process p = runtime.exec( str ); } public static void compiler( String targetDir, String filename ) throws Exception { // javac -d E:/test -classpath C:/work/WEB-INF/lib/bss.jar e:/test/TestVector.java Runtime runtime = Runtime.getRuntime(); Process p = runtime.exec( "javac -d "+targetDir+" "+filename ); } } 返回类别: 教程 上一教程: Nice用户手册(四) 下一教程: java在Oracle中建表 您可以阅读与"Java Class 映射及实用工具类完整源代码"相关的教程: · Java编写的计算器程序及源代码 · 运用加密技术保护JAVA源代码 · java链接数据库的工具类 · Java学生成绩治理系统源代码 · 一个自写的XML读写/存取属性的JAVA工具类库 |
![]() ![]() |
快精灵印艺坊 版权所有 |
首页![]() ![]() ![]() ![]() ![]() ![]() ![]() |