能否定义有返回值的main
代码如下:
public class Test1 {
public static int main(String[] args) {
System.out.println("test");
return 0;
}
}
javac Test1.java 成功
java Test1
Exception in thread "main"
java.lang.NoSuchMethodError: main如果定义为:public static void main
则不会有此错误.
我需要有返回值的main
请问该如何处理?
------解决方案--------------------重新定义一个函数来返回你要的值,在MAIN中调用就可以了
------解决方案--------------------好像不可以定义有返回的main函数的吧。
请问楼主 想要有返回值的main用来干什么?
------解决方案--------------------不能
首先是main前面的单词
因为main方法是由java虚拟机调用的,所以必须为public,
又因为虚拟机调用main方法的时候不需要产生任何对象,所以声明为static ;
且不需要返回值,所以声明为void
所以最终为: public static void main(String[] args)
------解决方案--------------------3楼说得对,只有C或C++中,才可以有不同的返回类型
------解决方案--------------------public static void main(String[] args)
------解决方案--------------------好像不可以的,不知道为什么要用main返回值
------解决方案--------------------为什么需要有返回值的main函数呢?其他函数不也一样能达到你想要的结果么?
既然选择了java稍微规范一下八!
------解决方案--------------------有一种说法,c/c++中很多大众写法其实都不符合规范,不同编译器表现也不同,main函数就是一个例子,相比之下,java要好很多。所以..规范。
------解决方案--------------------每个Java应用程序都必须包含一个main方法,语法如下:
public static void main(String[] args)
main方法包含三个修饰词:
(1)public:表示main方法可以由任何对象调用。
(2)static:表示这是一个类方法,区别于实例方法,与具体的对象无关。
(3)void:表示main方法没有返回值。
main方法是Java语言中非常特殊的方法,类似于C/C++中的main函数。当Java解析器执行Java应用程序,它首先执行这个Java类的main方法。你应该把程序的逻辑,比如打印Hello World!字样,写在main里面。
main方法有一个参数,即args,它是一个字符串数组,操作系统通过这个机制传递命令行参数。