首页 > 代码库 > Java的main函数使用小记
Java的main函数使用小记
转自:http://blog.csdn.net/qdieyou/article/details/1490618
————————————————————————————————
main函数的完整定义语法为public static void main(String[] args)
main方法是个特殊的方法,它是主程序访问的入口点,可以使用public、默认(即什么都不写)、protected、private进行修饰,并且不会出现运行期错误。
其中,public不是 必须的,声明为public是为了main方法可以从任意一个Java运行环境中调用。但是static是必须的,这样可以在不需要构造类实例的前提下,直接运行应用程序。
main方法没有返回值,返回值声明必须为void,而不能没有定义或定义为其他类型。
例题1:
以下哪些是main方法的正确形式?
(1)static void main(String[] args){}
(2)public static void main(String[] args){}
(3)public static void main(String args[]){}
(4)public static void main(String door[]){]
答案:1,2,3,4
以下文件“TestMain.java”
//测试main函数的写法
public class TestMain{
/*
public static void main(String[] args){//可以通过编译,而且能运行
System.out.println("test ok!");
}
*/
/*
static public void main(String[] args){//可以通过编译,而且能运行
System.out.println("test ok!");
}
*/
/*
static void main(String[] args){//可以通过编译,但不能运行,提示:Main method not public
System.out.println("test ok!");
}
*/
/*
public static void main(String args){//可以通过编译,但不能运行
System.out.println("test ok!");
}
*/
/*
public void main(String[] args){//可以过编译,不可运行,因为static修饰符是必须的。
System.out.println("test ok!");
}
*/
/*
void main(String[] args){//可以通过编译,不可运行
System.out.println("test ok!");
}
*/
public static void main(String[] args){
System.out.println(args.length);
//System.out.println(args[2]);//命令行上输入java TestMain,则args[2]不存在,故有异常,不能正常运行
}
}
终结:main函数必须是public、static、void的,而且参数必须为String类型的数组,这里顺序可以改变,变量名称可以改变。缺少的情况下编译可能通过,但是运行是不能通过。
附上自己检验代码
public class Test1 {
/**
* 可编译,但不能运行
*/
public static void main() {
System.out.println("123");
}
/**
* 可以正常运行
* @param string
*/
/* public static void main(String[] string) {
System.out.println("123");
}*/
/**
* 可编译,但不能运行
* @param args
*/
public static void main(String args) {
System.out.println("123");
}
/**
* 不能编译,返回值必须void
* @param args
* @return
*/
/* static public int main(String[] args){
}*/
/**
* 可编译,但不能运行
*/
static void main(String[] args){
System.out.println(123);
}
}