public static void main(String[] args)的理解!!

本文详细解析了Java程序中main()函数的工作原理,包括权限修饰符、静态和void关键字的作用,以及如何正确使用main()函数接收并处理命令行参数。通过实例演示了main()函数的调用过程及注意事项,特别强调了命令行参数传递的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

/*
public static void main(String[] args)

public:权限修饰符,权限最大。
static:随着MianDemo类的加载而加载,消失而消失。
void:  没有返回值
main: 函数名,jvm识别的特殊函数名
(String[] args):定义了一个字符串数组参数
*/

class MainDemo 
{
public static void main(String[] args) 
{
String[] arr = new String[]{"zhang","li","wang","zhao"};
MainTest.main(arr);
}
}
class MainTest
{
public static void main(String[] args)
{
for (int x=0; x<4; x++)
{
System.out.println(args[x]);
}
}
}


/*
1、运行java MainDemo时,提示越界,因为jvm传过来的是一个长度为0的数组,不存在有元素。
2、但是如果运行java MainDemo zhang li wang zhao  后,输出结果为zhang。
   因为通过这个命令,就相当于jvm给main()函数传递了一个String[] args = new String[]{"zhang","li","wang","zhao"}的数组。
*/

class MainDemo
{
public static void main(String[] args)
{
System.out.println(args.length);
System.out.println(args[0]);
}
}

/*
总结:
1、main()函数是被jvm调用,jvm给main()传了一个长度为0的字符串的数组,也就是new String[0]
2、可以通过类名.main()进行传值操作,因为main()方法是static的。
*/

转载于:https://www.cnblogs.com/qrlovelj/archive/2011/12/09/2282372.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值