答案是肯定的,可以使用 System.exit() 方法终结 main() 方法

示例代码如下:

package com.magic.main;

public class MainDemo {

    public static void main(String[] args) {
        System.out.println("Hello World");

        System.exit(0);

        System.out.println("Main End");
    }
    
}    

运行 MainDemo 类,输出的结果如下:

Hello World

Process finished with exit code 0

从输出结果可以看出,main() 方法被终止了,并没有打印出 “Main End”。

使用 System.exit(0) 是退出了整个虚拟机,之后的语句都不会被再执行了,下面来验证一下加上 finally 的情况:

package com.magic.main;

public class MainDemo {

    public static void main(String[] args) {
        System.out.println("Hello World");

        try {
            System.exit(0);
        } finally {
            System.out.println("Main End");
        }
    }
    
}   

运行程序,输出结果如下:

Hello World

Process finished with exit code 0

虽然有 finally ,但是里面的语句并不会被执行。

更多有关Java面试相关的知识点可以关注【Java面试手册】小程序,涉及Java基础、多线程、JVM、Spring、Spring Boot、Spring Cloud、Mybatis、Redis、数据库、数据结构与算法等。


十方
226 声望433 粉丝