Java main 方法三问
main 方法是我们能刚开始学习 Java 时接触的第一个方法,在开发过程中我们都会直接和间接的使用到这个方法,那么你是否考虑过这三个问题:
- main 方法为什么是静态方法?
- main 方法为什么是公有方法?
- main 方法的返回值为什么是 void ?
针对上面的三个问题我分别进行一一解答。
零、main 方法为什么是静态方法
我们想象一下,如果 main 方法不是静态的,那么 JVM 在调用 main 方法前就必须先实例化 main 类,但是构造器可以被重载因此 JVM 就无法确认到底应该调用哪个 main 方法。并且静态的方法和数据加载到内存中后就可以直接调用,而不需要先实例化类后才能调用实例化方法。简单的说就是静态的 main 方法会被加载到 JVM 上下文中成为可直接执行的方法。
一、main 方法为什么是公有方法
在 Java 中定义了一些访问修饰符,程序中的每个方法都可以加上任何一种访问修饰符。对于 main 方法来说因为需要在 main 类之外的地方也能访问到因此就需要指定为公有方法。
二、main 方法的返回值为什么是 void
main 方法为什么没有返回值其实很简单,因为 main 返回任何值对于程序来说没什么用。