这一章节我们来讨论一下main函数。
对于这个函数大家都不陌生,而且都习以为常,但是其中有一些东西,还是值得我们去总结的。
1.普通的main
package com.ray.test;
public class MainTest {
public static void main(String[] args) {
}
}
没什么特别,就是一个main的空方法
2.没有static的main
package com.ray.test;
public class MainTest {
public void main(String[] args) {
}
}
编译一样通过, 不过不能run,一run就报NoSuchMethod异常
3.没有参数的main
package com.ray.test;
public class MainTest {
public static void main() {
}
}
编译一样通过, 不过不能run,一run就报NoSuchMethod异常
4.参数为字符串的main
package com.ray.test;
public class MainTest {
public static void main(String args) {
}
}
编译一样通过, 不过不能run,一run就报NoSuchMethod异常
5.有final的main
package com.ray.test;
public class MainTest {
public static final void main(String args) {
}
}
编译一样通过, 不过不能run,一run就报NoSuchMethod异常
6.有返回值的main
package com.ray.test;
public class MainTest {
public static int main(String args) {
return 0;
}
}
编译一样通过, 不过不能run,一run就报NoSuchMethod异常
7.解释
现在这里解释一下上面的main,其实上面所有的main,我们都被误导了
上面所有的main函数,都不是我们所说的能够运行的main函数,只不过是一个叫main的普通函数
我们可以在下面再建立一个我们所知道的普遍的main函数
或者讲的技术一点,就是我们重载(注意:不是重写)main这个函数而已,但是我们的jvm只认他的格式的main函数,否则.class文件不能运行
总结:这一章节主要介绍了你不知道的main函数,其实这里是标题党啦,呵呵。
这一章节就到这里,谢谢。
-----------------------------------

本文探讨了Java中main函数的不同形式及其运行条件。包括常见的main函数签名及一些非常规的变体,如无static修饰符、不同参数类型或返回值的情况,并解释了为何这些变体无法正常启动。

855

被折叠的 条评论
为什么被折叠?



