Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 欺骗反射器_Java - Fatal编程技术网

Java 欺骗反射器

Java 欺骗反射器,java,Java,有一段java代码不是我写的,我无法更改它,它使用反射器调用类的方法。类似这样的内容(我没有看到代码): 到目前为止还不错 我控制类的名称、方法的名称和参数。我可以发送这些参数的任意组合,但有一个缺点:第一个参数是硬编码的,所以我发送的任何参数都会附加到params数组中。因此,该方法必须接受该参数 我的问题是:有没有办法创建一个类型并在其中使用它?大概是这样的: public class PrintWrapper { public static void println

有一段java代码不是我写的,我无法更改它,它使用反射器调用类的方法。类似这样的内容(我没有看到代码):

到目前为止还不错

我控制类的名称、方法的名称和参数。我可以发送这些参数的任意组合,但有一个缺点:第一个参数是硬编码的,所以我发送的任何参数都会附加到params数组中。因此,该方法必须接受该参数

我的问题是:有没有办法创建一个类型并在其中使用它?大概是这样的:

    public class PrintWrapper {
        public static void println(Somethingtype Something, String arg) {
            System.out.println(arg);
        }
    }
我试着用它作为类名,但没用,知道吗?我需要某种匿名的课程或是别的什么

不,我不能更改源代码或向系统中添加类。我只控制类的名称、方法的名称和其他参数

我只控制类的名称、方法的名称和其他参数

那么答案是:

没有办法创建一个类型并在其中使用它


很抱歉,我不明白你想做什么。什么是
pt
-你需要包括这个问题才能理解。pt是一个类对象数组,按声明的顺序标识方法的形式参数类型。这是由省略号处理的…:D是的,但你不让我们知道第一个条目是什么……你想入侵在线法官系统还是类似的东西?太糟糕了。让我来改革一下这个问题:你认为有没有一种方法可以执行没有输入的方法?如果我知道我不会问:你想实现什么?我想能够运行一个类的方法。但现在,如果方法接受第一个参数,我就可以这样做。您只能调用存在的方法
    public class PrintWrapper {
        public static void println(Somethingtype Something, String arg) {
            System.out.println(arg);
        }
    }