首页 > 解决方案 > 如何在没有 System.exit 的情况下停止程序

问题描述

好的,我在某处读到使用 System.exit 命令就像用锯切西瓜一样。

我有这部分代码和其中的一个异常

   try {
        System.out.print("Add last name of passenger: ");//asking user to enter last name
        passenger.setLastName(scanner.nextLine());//scanning his input
        if (!passenger.getLastName().contains("[A-Za-z]")) {//if his input is not equal with this regex
           throw new NoNumbersException();//throw this
        }
    } catch (NoNumbersException nne) {
        System.out.println(nne.getMessage());//catch exception
        System.exit(0);//exit program
    }

如何在没有异常的情况下停止该程序System.exit?如果我从代码程序中删除它打印我的异常然后继续其他代码,在该程序之后保存我输入的姓氏,即使那是整数

标签: java

解决方案


当没有更多的非守护线程处于活动状态时,您的程序和正在执行它的 JVM 会自动终止。您必须优雅地停止在应用程序中启动的所有线程以使其终止。


推荐阅读