[英]java.lang.ClassNotFoundException, PATH is corrent
我正在尝试创建一个简单的程序,但是JAVA当然会认为不是:它不是那么简单。 我需要动态实例化一个类,这意味着用户从键盘上给一个类名,然后创建一个具有该名称的类类型的对象。 码:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.lang.reflect.*;
public class NimMain {
public static void main(String[] args) throws IOException {
BufferedReader Olvaso = new BufferedReader(new InputStreamReader(System.in));
String be = Olvaso.readLine();
String[] kapcsolo = be.split(" ");
switch (kapcsolo[0]) {
case "uj": uj(kapcsolo);
case "lep":
case "listaz":
case "ment":
case "tolt":
}}
public static void uj(String[] s) {
try {
int b = 2;
String nev = s[1];
Class NimJatek = Class.forName(nev);
Constructor con = NimJatek.getConstructor(String[].class, int.class);
Object xyz = con.newInstance(s,b);
} catch (Exception e) {
e.printStackTrace();
}
}
}
无法实例化的类是NimJatek
,它位于同一目录中的同一(未命名)包中。 当我尝试运行该程序时,它给出了java.lang.ClassNotFoundException
错误。
我认为您对自己不太清楚的结构感到困惑。 最后,使用输入字符串的第二个值作为类加载。 如果您提供正确的字符串,它将被正确地修饰。 输入字符串:
"uj NimJatek"
将导致正确找到的类NimJatek-只要NimJatek在您的根包中并且此根包在您的类路径中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.