在百度知道上看到这样一个答案:
在命令提示符中运行该程序时 可以附加参数运行 输入的参数会存入到字符传数组 args[]中
例如:在命令提示符中运行该程序的时候
假设该程序在D的JAVA文件夹中
D:JAVA\javac Example.java
D:JAVA\java Example 20
则屏幕中输出
This is a simple Java program.
而args[]中所存储的是20
于是我试了一下:
public class Hello { private int asd; public Hello() { } public Hello(int argument) { asd = argument; } public int foo(int a, int b) { return (a + b) * (a - b); } public static void main(String[] args) { Hello hello1 = new Hello(); Hello hello2 = new Hello(99); System.out.println(hello1.foo(5, 3)); System.out.println(hello2.asd); String shit = args[0]; System.out.println(shit); } }
运行结果:
我把shittt作为args[0]通过这个命令行传进main函数了。(这段程序还顺便测试了下构造函数)
另外args这个参数名是可以随意变的,但必须是string才符合Java规范。
也许还有其他用处吧。
令外看到一个:
为什么是static
因为系统开始执行一个程序前,并没有创建main()方法所在类的实例对象,它只能通过类名类调用主方法。
public static void main(String args[])
我来解释一下这句话吧
这句话是java的程序入口它写在主类里面的
首先为什么是public
因为要在类外面调用main()所以是public
为什么是static
因为系统开始执行一个程序前,并没有创建main()方法所在类的实例对象,它只能通过类名类调用主方法main()作为程序入口,所以该方法是static
为什么是void
因为主方法没有返回值
为什么main
主方法名
为什么是String args[]或者String[] args
这表示给主方法传一个字符串数组,字符串名是args