易截截图软件、单文件、免安装、纯绿色、仅160KB

通过java反射机制动态调用某方法的总结

通过java的反射机制,动态调用某个方法:
如下:
public Object invokeMethod(String className, String methodName,
Object[] args) throws Exception{
Class ownerClass = Class.forName(className);
Object owner = ownerClass.newInstance();

Class[] argsClass = new Class[args.length];

for (int i = 0, j = args.length; i < j; i++) {

argsClass[i] = args[i].getClass();
}

Method method = ownerClass.getMethod(methodName, argsClass);
return method.invoke(owner, args);
}  
 但是,我们在实际应用中,还会碰到一种情况,传入的实参和要被调用的方法的形参可能不完全一致:
比如,在struts1.x中的某个方法被调用时候,它会有HttpServletResponse类型的参数,
我们在tomcat中,request对象的实例其实是:org.apache.catalina.connector.ResponseFacade
它实现了接口:javax.servlet.http.HttpServletResponse;
如果我们直接把web容器中的request对象当做一个参数,传入上面的代码片段的话, 就有问题,这时,我们的处理办法是这样的,在action中,方法一般形如:
public ActionForward query(ActionMapping mapping, ActionForm form,
   HttpServletRequest request, HttpServletResponse response)
response一般位于第四个,那么我们修改以上的代码:

        for (int i = 0, j = args.length; i < j; i++) {   
         
           argsClass[i] = args[i].getClass();             
        }  
改为:
        for (int i = 0, j = args.length; i < j; i++) {   
         if(i == 3){
           argsClass[i] = HttpServletResponse.class;   
         


相关文档:

java技能百炼001 Test

package CH1;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class exercise001 extends JApplet {
 // 定义变量
 private JColorChooser chooser = new JColorChooser();
 private JButton button = new JButton("Show Color Chooser");
 private JDialog dialo ......

最小二乘法JAVA代码

在网上找到的代码是错的,自己写了一个
最小二乘法的代码,二个构造方法,一个是不带权的,一个是带权的
/**
* 最小二乘法计算类
*
* @author Administrator
*
*/
public class LeastSquareMethod {
private double[] x;
private double[] y;
private double[] weight;
private int m;
private do ......

Java中字符串与ASCII相互转换


import java.io.UnsupportedEncodingException;
public class T {
 public static void main(String[] args) throws UnsupportedEncodingException {
  t1();//ASCII转换为字符串
  t2();//字符串转换为ASCII码
 }
 public static void t1(){//ASCII转换为字符串
   ......

Java调用系统命令学习(二)

经过上一篇的学习,应该对Java中的Runtime类的exec方法了大致的了解,也知道应该如何去使用了吧。
首先学习下:Process类。
简单地测试一下:
调用Javac命令,并查看执行命令的返回值,并输出到控制台上去。
import java.io.IOException;
class Exec_Javac{
public static void main(String []args)throws IO ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号