概述
Java初学者大都是从main函数在控制台打印HelloWorld来开始Java学习的, 其形式为:public static void main(String[ ] arg)。
首先,main方法是JVM(java虚拟机)自动调用,JVM调用main方法的位置自然不会在某个类中、或某个包中,因此只有当main方法在公有级别上时,才对JVM可见,所以mian方法需要public修饰,同理,main方法所在的类也需要public修饰符。
其次,由于main方法是所有程序的入口,也就是main被调用时没有任何对象创建,不通过对象调用某一方法,只有将该方法定义为静态方法,所以main方法是一个静态方法,既需要static修饰。
最后,JVM对于java程序已经是最底层,由它调用的方法的返回值已经没有任何地方可去,因此,main方法返回值为空,既需用void修饰。
因此Java的main函数只能写作这样的形式:public static void main(String[ ] arg)。
但是Java程序不一定需要main函数,那么不带main函数的Java代码如是怎样定义的呢。
只需要将main函数替换成static定义的代码片段即可:
static{
//your code here
}
需要注意的是,仅仅这么定义,在控制台运行时候仍旧会报错(编译可以通过),需要在代码中加入System.exit(0),即:
static{
//your code here
System.exit(0);
}
这样就能成功运行了^_^
举例:
class test
{
static
{
int a=0;
System.out.println(a);
System.exit(0);
}
}
其中,static语句块会在加载类的时候加载,它在main函数之前运行。 当static语句块运行完毕后,会寻找main函数,如果没有找到,就会i抛出异常。但是在以上的代码中,static语句块执行后,我们终止程序的运行,所以异常就不会被抛出。
转自:https://blog.csdn.net/esonjohn/article/details/64444117
https://blog.csdn.net/dolan/article/details/1734528
最后
以上就是自觉大碗为你收集整理的没有main函数时的Java程序的执行的全部内容,希望文章能够帮你解决没有main函数时的Java程序的执行所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复