栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

深入理解Java的main方法

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

深入理解Java的main方法

一、简单介绍
在我们的Java程序中都会出现一个名称为main的方法,我们发现没有这个方法我们的程序就无法运行。
其实任何一个Java程序的运行入口都是这个main方法,也就是说,程序在运行的时候,第一个执行的方法就是main()方法,这个方法和其他的方法有很大的不同:方法名称必须为main,且必须由 public static void 修饰以及入参必须是一个String类型的数组。

public class Test{
	public static void main(String[] args){
	System.out.println("我是任何一个Java程序的入口方法");
	}
}

二、详细分析
(1)main()方法为何必须被声明为public static void?
①必须由public修饰的原因是:main方法是要被JVM加载的,所以需要最高的访问权限。
②必须由static修饰的原因是:首先我们知道在java中调用一个方法,要么是通过实例对象调用,要么是直接通过类名调用。而JVM在调用我们的main方法是需要直接通过类名调用的,不会生成一个实例对象来调用,所以必须由static修饰。
③必须由void修饰的原因是:main方法执行完毕时,并不需要有相关返回值返回,所以void修饰即可。
(2)为什么方法名称必须为main,以及入参必须为String类型的数组?
这其实是java的规定,大家直接记住就好。不过虽然入参类型固定,但入参名称我们可以自定义。
(3)注意事项
由于我们的main方法被static修饰,所以它其实也是一个静态方法,所以在main方法中我们可以直接调用本类的静态方法和静态属性,但不能直接调用本类中的非静态方法或非静态属性,必须创建该类的一个实例对象后,才能通过这个对象去调用本类中的非静态成员。
三、main方法可不可以被重载、继承、重写、以及被其他方法调用?
(1)main()被重载测试:

(2)main()被继承与重写测试:

我们使用Student2类继承了Student类,Student2类里我们没有写main()方法却发现出现了小红三角,可以运行,而且运行结果也说明了子类继承了父类中的main()方法。那么既然可以继承,那么可不可以重写main()呢?当然是不可以的啦,因为被static修饰的方法可以被继承但不允许被重写。
(3)main()被调用测试:

根据运行结果我们可以知道main方法可以被其他方法调用。
四、总结
main()可以被重载、被继承、被其他方法调用,不可以被重写。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1021146.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号