📜  事实 48 |在Java中重载 main()(1)

📅  最后修改于: 2023-12-03 15:21:39.624000             🧑  作者: Mango

事实 48 | 在Java中重载 main()

在Java编程中,我们经常会写一个main方法作为程序的入口,但你知道吗?在Java中,我们可以重载main方法!

什么是重载?

重载,指的是在同一个类中定义多个方法,它们具有相同的名字但参数列表不同。

举个例子:

public void print(int num){
    System.out.println(num);
}
public void print(String str){
    System.out.println(str);
}

这就叫做方法的重载。

为什么要重载main方法?

在Java中,main方法作为程序的入口,有一定的约定方法:

  • 返回值类型必须为void
  • 方法名必须为main
  • 参数必须是一个String类型的数组(也可以是String...)

但是,有时候我们需要在程序中调用多个main方法,比如:

  • 对不同的输入进行测试
  • 把程序分开成多个子程序,方便调用

这时候,我们就可以用重载的方式来定义main方法。

例子

前面我们已经说了,main方法的参数必须是一个String类型的数组,那么我们就可以通过改变数组长度、参数类型等方式来重载main方法。

public static void main(String[] args){
    System.out.println("我是main方法一!");
}

public static void main(String arg){
    System.out.println("我是main方法二!");
}

public static void main(){
    System.out.println("我是main方法三!");
}

我们可以通过运行下面的代码来执行不同的main方法,注意观察控制台打印的输出:

public class Main {
    public static void main(String[] args){
        Main.main(new String[]{"abc", "def"});
        Main.main("xyz");
        Main.main();
    }
}

输出结果:

我是main方法一!
我是main方法二!
我是main方法三!
总结

在Java中,不仅方法可以重载,main方法也可以。通过重载main方法,我们可以在一个程序中定义多个入口,满足不同的需求。

markdown: ✓

代码片段已按markdown标明: ✓