一、简述

java.lang.System源码,方法说明如下:

/*** Terminates the currently running Java Virtual Machine. The* argument serves as a status code; by convention, a nonzero status* code indicates abnormal termination.* <p>* This method calls the <code>exit</code> method in class* <code>Runtime</code>. This method never returns normally.* <p>* The call <code>System.exit(n)</code> is effectively equivalent to* the call:* <blockquote><pre>* Runtime.getRuntime().exit(n)* </pre></blockquote>** @param      status   exit status.* @throws  SecurityException*        if a security manager exists and its <code>checkExit</code>*        method doesn't allow exit with the specified status.* @see        java.lang.Runtime#exit(int)*/public static void exit(int status) {Runtime.getRuntime().exit(status);}

二者都是用来结束当前正在运行中的 JVM,退出程序的意思,如果 status 是非零参数,那么表示是非正常退出。

区别:

  1. system.exit(0):程序正常执行结束退出。该方法是将整个虚拟机里的内容都停掉了 ,而 dispose() 只是关闭这个窗口,但是并没有停止整个 application exit() 。无论如何,内存都释放了。也就是说连 JVM 都关闭了,内存里根本不可能还有什么东西。

  2. system.exit(1):是非正常退出,就是说无论程序正在执行与否,都退出。1 或者说非 0 表示非正常退出程序。不管 status 为何值都会退出程序。return 是回到上一层,而System.exit(status)是回到最上层。

二、用法

在 if-else 判断中,如果程序按照预想的执行,到最后需要停止程序,那么使用System.exit(0)。而System.exit(1)一般放在 catch 块中,当捕获到异常,用来停止程序。这个 status=1 是用来表示这个程序是非正常退出。

system.exit(0) 和 system.exit(1)相关推荐

  1. C语言 exit 0;与exit 1;return 0;return1

    exit 0:与exit 1:进程退出 exit 0:正常退出 exit 1:异常退出 return 0:与return 1:函数退出 return 0:正常退出 return 1:异常退出

  2. System.exit(0)和System.exit(1)区别

    2019独角兽企业重金招聘Python工程师标准>>> System.exit(0)是将你的整个虚拟机里的内容都停掉了 ,而dispose()只是关闭这个窗口,但是并没有停止整个ap ...

  3. Environment.Exit(0)和Environment.Exit()方法

    net强制退出主窗口的方法--Application.Exit()方法和Environment.Exit(0)方法 2009年04月09日 23:59:00 fengloveyun 阅读数:1470 ...

  4. shell脚本:exit 0 和 exit 1有什么区别?他们和return不同,return是关键字,exit是一个shell函数

    定义 exit 0 :正常运行程序并退出程序.使用echo $? 返回0,也就是说调用环境认为你的程序执行正常. exit 1 :非正常运行导致退出程序,也可以是其他数字.系统程序对于程序运行错误是有 ...

  5. shell脚本:exit 0 和 exit 1有什么区别?

    定义 exit 0 :正常运行程序并退出程序.使用echo $? 返回0,也就是说调用环境认为你的程序执行正常. exit 1 :非正常运行导致退出程序,也可以是其他数字.系统程序对于程序运行错误是有 ...

  6. 【Linux】exit(0)exit(1)return

    exit()与return的区别: exit(0):正常运行程序并退出程序,调用时程序运行正常结束: exit(1):非正常运行导致退出程序,调用时程序运行非正常结束: return():返回函数,若 ...

  7. Shell—关于exit 0的那些坑

    关于exit 0的那些坑   在 shell 编程中,需慎用 exit 0!   首先必须弄清楚 exit 0 不是 return 0, 区别在于 return 0 用于函数中,表示函数执行成功返回 ...

  8. java中System.exit(1)、System.exit(0)、以及return的区别

    System.exit(0)是正常退出程序,而System.exit(1)或者说非0表示非正常退出程序 System.exit(status)不管status为何值都会退出程序. 和return 相比 ...

  9. system.exit(0) system.exit(1) 含义与区别

    首先他俩都是退出程序的意思: 区别在于: system.exit(0): 正常退出,程序正常执行结束退出 system.exit(1): 非正常退出,就是说无论程序正在执行与否,都退出, System ...

最新文章

  1. VSCode设置合并行快捷键
  2. ubuntu18上安裝TeamViewer
  3. Java的二十三种设计模式(适配器模式(Adapter)、对象的适配器模式)
  4. 电工助手App开发 第三周
  5. ASP.NET Core MVC 之过滤器(Filter)
  6. python的三维图片_python如何做三维图
  7. Odoo10参考系列--工作流
  8. golang mysql 超时_Go语言channel超时机制
  9. 企业主要培养三大方向的思考习惯
  10. 如何不让你的APP在模拟器中运行。
  11. 述 SQL 中的 distinct 和 row_number() over() 的区别及用法
  12. 企业数字化转型必备利器之微服务扩展
  13. SpreadJS V14.2.0 放假前Crack
  14. 雨林木风YN9.9三分极速速终结版 http://www.51ylmf.cn
  15. 使用Android Studio开发widget安卓桌面插件
  16. 芯片解密什么是物联网芯片,与普通芯片有什么不同?
  17. (二)PUN 2基本教程
  18. win11系统电脑打开桌面便签小工具的操作方法
  19. 01教育学的产生和发展
  20. 软件测试 | 测试开发 | Real Distributed APEX

热门文章

  1. opencv-python学习(三)图片的平滑滤波处理
  2. unit单元测试和e2e端到端测试的区别
  3. Redis管理工具(Redis Assistant)更新啦
  4. Word之输出音符mf中强音符(三)
  5. Spark Streaming 实时计算在甜橙金融监控系统中的应用、性能优化、任务监控
  6. 学习笔记(十五):基于WiFi的步态速度检测
  7. https双向认证试验
  8. string头文件详解
  9. C语言之qsort函数进行排序
  10. Stata:面板固定效应需要调整R方,如何得到