gpt4 book ai didi

java - 以下 java 反射代码有什么问题?

转载 作者:行者123 更新时间:2023-11-29 04:53:32 25 4
gpt4 key购买 nike

我正在尝试使用反射方法调用 URLClassLoader,

我检查了文档,其中声明了一个构造函数,

URLClassLoader(URL[] urls)

但是下面的代码会导致一个错误数量的参数异常:

import java.io.*;
import java.net.*;
import java.lang.reflect.*;

public class Foo {
public static void main (String[] args)
{
try {
Method method = URLClassLoader.class.getMethod("newInstance", URL[].class);
URLClassLoader loader = (URLClassLoader) method.invoke (
new Object [] { new URL ("http://127.0.0.1/a.class") });
} catch (Exception e) {
e.printStackTrace ();
}
}
}

最佳答案

您正在传递单个 URL 对象来代替 URL 数组

您需要创建一个包含一个 URL 的数组,并将该数组放入 Object[] 数组中:

URLClassLoader loader = (URLClassLoader) method.invoke (
new Object [] {
new URL[] { new URL ("http://127.0.0.1/a.class") }
});

关于java - 以下 java 反射代码有什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34562243/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com