Java main方法的特性

 

 

package cn.edu.hit.soft.sigh;

public class JavaMain {
	public static int times = 5;
	public static void main(String[] args) {
		System.out.println("your input is :");
		for (String s : args) {
			System.out.println("\t" + s);
		}
		main();
		main( 12 );
		main(12,32);
	}

	public static void main() {
		System.out.println("in  main()");
	}

	public static void main(int x) {
		System.out.println("in  main(int x), x = " + x);
	}

	public static void main(int x, int y) {
		System.out.println("in  main(int x, int y), x = "+ x + ", y = " + y);
	}
}

 

上面这段代码执行命令

 

java JavaMain "Hello World" Hellow,World Hello World
 

后运行的结果为:

 

your input is :
        Hello World
        Hellow,World
        Hello
        World
in  main()
in  main(int x), x = 12
in  main(int x, int y), x = 12, y = 32

最先输出的几行表明:在命令行下用java命令运行程序并传递参数时,将以空格为分隔符,如果参数内有空格,可以用引号""将其括起,当作一个整体。

后面几行输出表明java中程序主入口方法main 是可以被重载,但程序运行时调用的是方法

 

public static void main(String[] agrs) 
 

另外,再看看这个方法能否被其他方法调用,代码如下:

 

public class JavaMain {
	public static int times = 5;
	public static void main(String[] args) {
        if(times <= 0){
            System.exit(0);
        }
		func(args);
	}

	public static void func( String[] args){
		System.out.println( times + " main call left" );
		times --;
		main(args);
	}
}
 

然后运行,结果如下:

 

5 main call left
4 main call left
3 main call left
2 main call left
1 main call left

 可见,它也是可以被其他方法调用的。

 

  综上,作为java程序的入口方法,public statc void main(String[] agrs){}与java中public、static、 void等关键字修饰的斯文方法完全一样,都可以被调用、重写等,但它又有一个独有的特点就是:它是java程序的唯一入口。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值