开发人员都知道,程序执行总是从main函数开始,如果有有其他函数,则完成对其他函数的调用后再返回到主函数,最后由main函数结束整个程序。那java主函数如何定义?下面来我们就来给大家讲解一下。
public static void main(String[] args) {}
public:
main主方法是由jvm来调用的,jvm实际也是一个程序,为了保证jvm能够在任何情况下来调用主函数。
static:
如果没有static这个时候调用主方法就需要通过对象来调用,jvm如果创建对象不知道该传递什么参数,所以为了避免麻烦,就将方法定义成静态的,
这个时候就不需要考虑对象,直接类名调用就可以了。
void :
main是由jvm调用,返回值是给jvm,jvm接收返回值没有任何意义,所以不需要返回值。
main:
不是关键字,main以及约定好这个就叫入口。
args:
用来接收程序运行时传递进来的参数。
java主函数怎么应用?
1.C++中的main函数
C++继承了C语言的大部分特性,因此保留了“程序总是从main函数开始执行,且总是默认从main函数的return语句或结尾处结束运行”这一传统,但是要注意,C++中的main函数要想作为程序执行的出入口,必须写在全局(Global)范围,不能写成某个结构体或某个类的成员。虽然main函数可以作为结构体或者类的成员函数,但相应地会失去作为程序出入口的功能。
C++中全局main函数的书写格式与C语言完全相同,功能也完全相同,且同一C++程序同样只能有一个全局main函数。
2.Java中的main函数
Java同样是以main函数作为程序执行出入口的,但Java作为“更纯洁”的面向对象语言,它的main函数与C/C++有很大的不同。
首先,返回值的概念淡化,在Java Application中main不允许返回值,因此int main是被禁止的,必须使用void main,int main仅限在JavaBean中使用。
其次,Java中所有的函数必须属于类,没有什么全局函数一说,因此main函数不能是全局成员,必须是某个类的成员。
第三,由于main函数变成了类的成员函数,因此要想直接被系统调用,还必须使用public static使其成为静态函数并具有公开权限。
第四,main函数的参数被简化,只需要提供字符串数组即可,不需要提供参数个数(这是由于Java的数组具有下标检查功能的原因)
Java Application中的main函数一般格式如下(类名可以自定义,但保存为Java源码时,主文件名必须与类名相同,否则可能无法运行)
public class MainDemo { public static void main(String[] args) { //TODO:在此处写入主函数的内容 } }
Java Applet的运行机制与Java Application完全不同,因此不需要main函数
3.C#中的main函数
C#中的main函数与Java大同小异,同样必须是类成员,同样使用字符串数组作唯 一参数,同样是静态函数,同样的void main,与之不同的是:main的首字母变成了大写,即"Main函数“,且是否限定为public级别已经无所谓了(默认没有public,但某些场合可能还是需要public)
另外,需要注意的是,C#中不再有”类名必须与主文件名同名“的限制,即使类名不和主文件名相同,程序照样可以运行。
C#应用程序中的main函数默认是这样的(注意main的首字母已是大写)
C#和C/C++、java不同的是C#不在拘泥于必须从main()函数开始执行,C#是属于事件触发。
class Program { static void Main(string[] args) { //TODO:在此处写入主函数的内容 } }
总之Java主函数很重要,是一个程序的入口,可以说很多程序都是有主函数开始的,没有主函数程序就会运行失败哦,最后大家如果想要了解更多初识java知识,敬请关注赋能网。