java程序入口main()方法浅析

java程序入口main()方法浅析

main()方法的方法签名

public static void main(String[] args)

方法签名讲解

 public修饰符:java类由java虚拟机(JVM)调用,为了没有限制可以自由的调用,所以采用public修饰符。
 static修饰符:JVM调用这个主方法时肯定不是先创建这个主类的对象,再通过对象来调用方法,而是直接通过该类来调用这个方法,因此需要使用static修饰符修饰这个类。
 void返回值:主方法被JVM调用,将返回值返回给JVM没有任何意义,因此该方法没有返回值,所以使用void。
 扩展:
 public:该修饰符表明该数据成员、成员函数是对所有用户开放的,所有用户都可以直接进行调用。
 static:该修饰符表示静态的意思,简单理解被static修饰符修饰的成员都属于类本身,而不属于类的某个实例,静态成员不能能直接访问非静态成员。
 void:使用void说明没有返回值。

这时会发现我没有说字符串数组形参内容,这里我们首先知道,谁调用方法,谁去传递形参,所以args形参由JVM负责赋值,JVM给args赋了什么值?

我们先看一段程序:

public class args {
    public static void main(String[] args){
        for (String s:args) {
            System.out.println(s);
        }
        System.out.println("-------------------" );
        System.out.println(args.length);
    }
}

输出:

-------------------
0

 这里输出数组长度为0,这是因为,程序没有给args设定参数值,所以JVM也就不知道args数组中的元素,然后JVM给args数组设置为一个长度为0的数组。
 如果我们使用dos命令运行程序时,在类名后加上一个或者多个字符串(以空格隔开),这时JVM会依次将这些数值赋给args数组。
例如:

λ java lzjarg lzj why
lzj
why
-------------------
2
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Win7下如何打开DOS控制台? a:开始--所有程序--附件--命令提示符 b:开始--搜索程序和文件--cmd...
    逍遥叹6阅读 5,544评论 4 12
  • 一、基础知识:1、JVM、JRE和JDK的区别:JVM(Java Virtual Machine):java虚拟机...
    杀小贼阅读 7,146评论 0 4
  • 小编费力收集:给你想要的面试集合 1.C++或Java中的异常处理机制的简单原理和应用。 当JAVA程序违反了JA...
    八爷君阅读 10,260评论 1 114
  • 一、基本数据类型 注释 单行注释:// 区域注释:/* */ 文档注释:/** */ 数值 对于byte类型而言...
    龙猫小爷阅读 9,792评论 0 16
  • 雪凝落蕊,冰封梅香,馥郁而不失风趣忆; 拂袖弄墨,竹韵纸香,醇厚而不失清雅; 燕羽旋空,划书刻简,春露秋霜,周而复...
    雪凝落蕊阅读 1,310评论 1 1

友情链接更多精彩内容