当前位置: 首页 > 知识库问答 >
问题:

如何在cmd上执行java程序中的特定方法?

牟嘉
2023-03-14

我有一个java程序定义如下:

public class MyClass{    
   public String getPathBetween(String path,String folderName,String extension){..}
   public static void main(String[] args) throws Exception{...}
}

使用以下命令编译程序后:

$ javac MyClass.java

我可以像这样运行main方法:

java博客

但是我如何运行getPath在之间的方法呢?

我试过了,但没有用:

$ java MyClass.getPathBetween("some text", "some","text")

共有3个答案

任长卿
2023-03-14

正如ndc85430在回答中指出的那样,方法名称始终是在命令行(控制台)中执行的Java应用程序的入口点。

正如Mickey回答中所指出的,用户可以在命令行调用Java应用程序时传递参数。

请参阅Oracle提供的本教程。

您还可以在命令行上与用户交互。使用系统。out打印用户要阅读的说明和菜单选项。使用扫描器对象接收和分析用户在命令行上键入的输入。

请参阅Oracle的本教程,从命令行输入/输出。

搜索Stack Overflow可以找到许多示例。这种方法经常用于初学Java学生的教程和教科书中。

您可能对与Java捆绑在一起的REPL JShell感兴趣。

使用JShell,您可以键入要立即执行的Java代码。您可以实例化一个对象,如果您的类。您可以调用该对象上的方法。

丁阎宝
2023-03-14

您需要从main调用方法。程序的切入点始终是main

鲍钊
2023-03-14
//You can create an instance of MyClass in your main() method
// and then call getPathBetween():
public class MyClass{    
   public String getPathBetween(String path, String folderName, String extension){..}
   public static void main(String[] args) throws Exception{
      MyClass myClassInstance = new MyClass();
      String path = "/some/path/value";
      String folder = "my-test-folder";
      String extension = "xyz";
      String pathBetween = myClassInstance.getPathBetween(path, folder, extension);
      System.out.println("pathBetween=" + pathBetween);
   }
}

或者,如果希望能够从命令行将值传递到getPathBetween(),可以将代码更改为:

public class MyClass{    
   public String getPathBetween(String path, String folderName, String extension){..}
  public static void main(String[] args) throws Exception{
     MyClass myClassInstance = new MyClass();
     String path = args[0];
     String folder = args[1];
     String extension = args[2];
     String pathBetween = myClassInstance.getPathBetween(path, folder, extension);
     System.out.println("pathBetween=" + pathBetween);
  }
}

然后像这样运行:

java MyClass "some text" "some" "text"
 类似资料:
  • (我是java BTW的新手!)

  • 我想制作一个打开另一个java程序的程序。如何在编译和运行java程序时运行/执行cmd命令。 例如c:\Users\Burnok 如何在java程序中实现这一点?请帮忙。 我尝试了这段代码,但编译成功,但如果我尝试运行HelloWorld。类它表示无法找到或加载主类。 以下是java src/HelloWorld stderr的错误:错误:无法找到或加载主类src。你好世界

  • 所以我在eclipse中设置了一个基本的你好世界,我可以很容易地使用cmd编译它(我已经设置了所有必要的路径),但是当我尝试使用java命令来执行你好世界时,它总是返回相同的错误:错误:无法找到或加载主类helloWorld引起的:java.lang.NoClassDefFoundError: net/codejava/helloWorld(错误的名称:helloWorld) 以下是使用的代码:

  • 本文向大家介绍Windows系统中Java调用cmd命令及执行exe程序的方法,包括了Windows系统中Java调用cmd命令及执行exe程序的方法的使用技巧和注意事项,需要的朋友参考一下 Java调用cmd命令,并输出显示信息: Java启动本机应用程序EXE的三种方式: 第一种方式:利用cmd方式  第二种方式:利用ProcessBuilder调用cmd方式 第三种方式:使用Desktop启

  • 问题内容: 我想执行以特定顺序注释的测试方法。 例如: 我想确保每次运行前都运行,但是找不到类似的注释。 我认为对于JUnit来说这是非常重要的功能,如果JUnit的作者不希望使用订单功能,为什么呢? 问题答案: 我认为这对于JUnit来说是非常重要的功能,如果JUnit的作者不希望使用订购功能,为什么呢? 我不确定用JUnit做到这一点的干净方法,据我所知JUnit假定所有测试都可以按任意顺序执

  • 本文向大家介绍java执行windows下cmd命令的方法,包括了java执行windows下cmd命令的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了java执行windows下cmd命令的方法。分享给大家供大家参考。 具体实现代码如下: 例如: cmd /c dir 是执行完dir命令后关闭命令窗口。 cmd /k dir 是执行完dir命令后不关闭命令窗口。 cmd /c st