【问题标题】:please can you explain me this code with examples [duplicate]请你能用例子解释一下这段代码吗[重复]
【发布时间】:2015-05-12 21:48:03
【问题描述】:

Public static void main(String[] args)请解释一下为什么我们在这里制作参数数组以及为什么它是静态的什么是args []。

【问题讨论】:

标签: java


【解决方案1】:

static >它与main()一起使用并提供静态方法的优点,这意味着不需要创建对象来调用main方法。

void > main() 被声明为 void,因为它不返回任何值。

String[] args >此参数用于命令行参数。所以命令行上传递的任何参数都将收集在 args[] 数组中。

例如

class CommandLineExample{  
public static void main(String args[]){  
System.out.println("Your first argument is: "+args[0]);
System.out.println("Your second argument is: "+args[1]);  
}  
}  

compile by > javac CommandLineExample.java  
run by > java CommandLineExample India USA  

输出:

Your first argument is: India
Your second argument is: USA

【讨论】:

  • 感谢您在这里的回答有点混乱,即什么是 jvm 以及它在 java 中的工作原理。
【解决方案2】:

当您从命令提示符启动应用程序时,java 解释器会在您的应用程序类中查找 public static void main(String[] args) 方法并调用它。

所有命令行参数都作为字符串数组传递给此方法。

例如,如果您调用:

java MyClass param1 param2 param3

java 解释器调用 MyClass 类的 public static void main(String[] args) 并将包含元素 param1、param2、param3 的数组作为此方法的 args 参数传递。

如果你的类 MyClass 不包含 public static void main(String[] args) 方法,那么你会得到一个错误。

让我们解释一下public static void main(String[] args) 修饰符。

  • public - 可在您的课程包之外访问。
  • static - 因为它没有连接到MyClass 实例,所以可以在不构建MyClass 的对象的情况下调用它。
  • void - 因为这个方法什么都不返回。

【讨论】:

    【解决方案3】:

    public 表示 main() 可以从任何地方调用。
    static 表示 main() 不属于特定对象。
    void 表示 main() 返回 no value.
    main 是函数的名称。 main() 是特殊的,因为它是程序的开始。
    String[] 表示 String 数组。
    args 是 String[] 的名称(在 main() 的主体内)。 args 不特殊;您可以将其命名为其他任何名称,程序也可以正常工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-26
      • 1970-01-01
      • 1970-01-01
      • 2017-05-12
      • 1970-01-01
      • 2021-04-22
      • 1970-01-01
      相关资源
      最近更新 更多