我尝试编写自己的加载程序类来加载加密类。
因此,我还重写了loader(ClassLoader paramClassLoader, File paramFile)
调用super(new URL[] { paramFile.toURI().toURL() }, paramClassLoader);
.
调用“.toUrl()”可以抛出一个MalformedURLException
,所以编译下面的代码......
public class loader extends URLClassLoader {
public static void main(String[] args)throws Exception{
Object localObject =
new loader(loader.class.getClassLoader(),
new File(loader.class.getProtectionDomain().getCodeSource()
.getLocation().getPath())
);
(...)
}
private loader(ClassLoader paramClassLoader, File paramFile){
super(new URL[] { paramFile.toURI().toURL() }, paramClassLoader);
if (paramClassLoader == null)
throw new IllegalArgumentException("Error loading class");
}
}
错误:
loader.java:123: error: unreported exception MalformedURLException; must be caught or declared to be thrown
super(new URL[] { paramFile.toURI().toURL() }, paramClassLoader);
我怎样才能捕捉到这个异常?try-catch-block 是不可能的,因为“对 super 的调用必须是构造函数中的第一条语句”。