gpt4 book ai didi

java - 如何使用java从另一个类获取命令行参数

转载 作者:搜寻专家 更新时间:2023-10-30 21:21:02 26 4
gpt4 key购买 nike

所以假设我有一个 java 包....

它有主类和main方法

然后它还有一大堆其他类.....

我的问题是,是否有可能从不属于主类但在同一包中的这些其他类中获取传递到 main 方法中的参数...

最佳答案

不,不可移植,可能有一些基于 JVM 实现的技巧,但我从未见过它,即使它存在,依赖它也是一个非常糟糕的主意。

如果你想在别处使用这些值,main 函数需要以某种方式使它们可用。


一个简单的方法(不一定是最好的方法)是简单地将字符串存储为 main 中的第一件事,并提供一种方法来获取他们:

Scratch2.java:

public class Scratch2 {
// Arguments and accessor for them.

private static String[] savedArgs;
public static String[] getArgs() {
return savedArgs;
}

public static void main(String[] args) {
// Save them away for later.

savedArgs = args;

// Test that other classes can get them.

CmdLineArgs cla = new CmdLineArgs();
cla.printArgs();
}
}

CmdLineArgs.java:

public class CmdLineArgs {
public void printArgs() {
String[] args = Scratch2.getArgs();
System.out.println ("Arg count is [" + args.length + "]");
for (int i = 0; i < args.length; i++) {
System.out.println ("Arg[" + i + "] is [" + args[i] + "]");
}
}
}

并且,当使用参数 a b c 运行时,输出:

Arg count is [3]
Arg[0] is [a]
Arg[1] is [b]
Arg[2] is [c]

关于java - 如何使用java从另一个类获取命令行参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5061367/

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