Java 在eclipse中,如何调用从控制台读取的函数?
我想从控制台读取函数名,然后在该类中调用它。 因此,我不希望使用“IF”语句检查哪个函数,而是希望它自动发生Java 在eclipse中,如何调用从控制台读取的函数?,java,eclipse,command-line,console,Java,Eclipse,Command Line,Console,我想从控制台读取函数名,然后在该类中调用它。 因此,我不希望使用“IF”语句检查哪个函数,而是希望它自动发生 Exmp. _ (CONSOLE) BuildDatabase (WRITTEN IN CONSOLE) ---> What happens in class : Class.BuildDataBase(); 能做到吗? 另一个问题-如何从命令行运行类的main 谢谢大家您可以使用反射: Method method = YourClass.getMethod(nam
Exmp.
_ (CONSOLE)
BuildDatabase (WRITTEN IN CONSOLE)
---> What happens in class : Class.BuildDataBase();
能做到吗?
另一个问题-如何从命令行运行类的main
谢谢大家您可以使用反射:
Method method = YourClass.getMethod(nameReadFromConsole); //no parameters
method.invoke(null); // invoking without a target object - i.e. static
从控制台运行是通过-
java类名来完成的,当你说命令行时,你是指终端吗?
如果要在类u中运行main方法,可以调用:
java MyClass
但必须是编译文件(the.class)或者您可以为控制台编写自定义读取器(此代码需要清理/重构):
- 已编辑以添加“readLine”调用李>
如果我想传递参数怎么办?
public static void main(String[] args) {
MyClass instance = new MyClass();
while(true) {
System.out.print("> ");
String input = new BufferedReader(new InputStreamReader(System.in)).readLine();
Method method = MyClass.getDeclaredMethod(input);
Object returnValue = method.invoke(instance);
System.out.println(returnValue);
}
}