Java千百问_03基础语法(016)_main方法是什么

来源:互联网 发布:矩阵乘法计算公式 编辑:程序博客网 时间:2024/04/30 16:30

点击进入_更多_Java千百问

1、main方法是什么

某个类中有main()方法,说明这是一个java应用程序,可以直接启动运行的程序(操作系统中安装了jdk或者jre)。任何一个非抽象类/接口都可以添加main()方法。

了解抽象类、接口看这里:接口和抽象类有什么区别
在java的规范中,main()方法的声明为:

public static void main(String args[]){}

当通过java运行工具运行某个类时:java 类名,jre会运行类中的main()方法。在运行这个Java应用程序的时候,首先会调用main方法,由于main方法是public static,所以调用时不实例化这个类的对象,而是通过类名直接调用。

了解public、private看这里:public、privite、protected有什么区别
对于main有以下几点需要注意:

  1. 对于java中的main方法,由于规范中main的返回值类型为void,所以main方法不能有返回值

  2. main方法的输入参数,类型为String[],规范中main()方法中必须有一个入参String[],当然参数的名字是可以自己设定的。根据习惯,这个字符串数组的名字一般和规范范例中mian参数名保持一致,取名为args

  3. main(String[] args)方法的参数args可以在运行时指定,例如:java TestMain 1 2 3,则args为[1,2,3]。

  4. main方法中可以通过throws Exception声明抛出异常,如果发生异常,则会直接抛在运行工具中(运行工具一般会将错误日志打印到console)。

  5. 带有main方法的类同普通类一样,执行main之前也会先执行类的静态代码块static{}

结合以上几点的一个例子:

public class TestMain {    static {        System.out.println("Hello Wordld");    }    public static void main(String[] args) throws Exception {        if (args.length > 0) {            for (String arg : args) {                System.out.println("args:" + arg);            }        }        if (args.length <= 0) {            throw new Exception("Exception");        }    }}

执行“java TestMain”结果如下:

Hello Wordld
Exception in thread “main” java.lang.Exception: Exception
at com.test.TestMain.main(TestMain.java:16)

执行“java TestMain 1 2 3”结果如下:

Hello Wordld
args:1
args:2
args:3

1 0
原创粉丝点击