话不多说,直接上图
代码:System.exit(0);
这句代码,很简单,但是也非常暴力。就是结束整个程序。
1、下面先演示下不加上这个语句:
然后控制台输出两个println;
2、现在加这句代码放在中间
然后执行的效果就是:
3、现在把语句放在开头:
小编相信这里有很多学习java的朋友,小编整理了一份java方面的学习资料,想要获取的可以加我的java学习Q群的哟,92820,4055。欢迎爱学习Java的你们。
执行:
然后什么都没有了。显示为空。
下面来看一下,exit这个静态方法:
看了这段代码,你就会发现,这个是有一个静态参数的,如果是非0表示非正常退出,如果是0表示是正常退出。
下面来总结一下,这个方法:
1、System.exit(0)是将你的整个虚拟机里的内容都停掉了 ,而dispose只是关闭这个窗口,但是并没有停止整个application exit。无论如何,内存都释放了!也就是说连JVM都关闭了,内存里根本不可能还有什么东西
2、System.exit(0)是正常退出程序,而System.exit(1)或者说非0表示非正常退出程序
3、System.exit(status)不管status为何值都会退出程序。和return 相比有以下不同点:return是回到上一层,而System.exit(status)是回到最上层
示例
在一个if-else判断中,如果我们程序是按照我们预想的执行,到最后我们需要停止程序,那么我们使用System.exit(0),而System.exit(1)一般放在catch块中,当捕获到异常,需要停止程序,我们使用System.exit(1)。这个status=1是用来表示这个程序是非正常退出。