- 论坛徽章:
- 0
|
Java main方法的特性
Java代码- 1.package cn.edu.hit.soft.sigh;
- 2.
- 3.public class JavaMain {
- 4. public static int times = 5;
- 5. public static void main(String[] args) {
- 6. System.out.println("your input is :");
- 7. for (String s : args) {
- 8. System.out.println("\t" + s);
- 9. }
- 10. main();
- 11. main( 12 );
- 12. main(12,32);
- 13. }
- 14.
- 15. public static void main() {
- 16. System.out.println("in main()");
- 17. }
- 18.
- 19. public static void main(int x) {
- 20. System.out.println("in main(int x), x = " + x);
- 21. }
- 22.
- 23. public static void main(int x, int y) {
- 24. System.out.println("in main(int x, int y), x = "+ x + ", y = " + y);
- 25. }
- 26.}
-
复制代码 上面这段代码执行命令
Java代码- 1.java JavaMain "Hello World" Hellow,World Hello World
复制代码 后运行的结果为:
Java代码- 1.yWorld
- 6.in main()
- 7.in main(int x), x = 12
- 8.in main(int x, int y), x = 12, y = 32 our input is :
- 2. Hello World
- 3. Hellow,World
- 4. Hello
- 5.
复制代码 最先输出的几行表明:在命令行下用java命令运行程序并传递参数时,将以空格为分隔符,如果参数内有空格,可以用引号""将其括起,当作一个整体。
后面几行输出表明java中程序主入口方法main 是可以被重载,但程序运行时调用的是方法
Java代码- 1.public static void main(String[] agrs)
复制代码 另外,再看看这个方法能否被其他方法调用,代码如下:
Java代码- 1.public class JavaMain {
- 2. public static int times = 5;
- 3. public static void main(String[] args) {
- 4. if(times <= 0){
- 5. System.exit(0);
- 6. }
- 7. func(args);
- 8. }
- 9.
- 10. public static void func( String[] args){
- 11. System.out.println( times + " main call left" );
- 12. times --;
- 13. main(args);
- 14. }
- 15.}
复制代码 然后运行,结果如下:
Java代码- 1.5 main call left
- 2.4 main call left
- 3.3 main call left
- 4.2 main call left
- 5.1 main call left
复制代码 可见,它也是可以被其他方法调用的。
综上,作为java程序的入口方法,public statc void main(String[] agrs){}与java中public、static、 void等关键字修饰的斯文方法完全一样,都可以被调用、重写等,但它又有一个独有的特点就是:它是java程序的唯一入口。
|
|