网友:有没有一段代码,看起来简单,实则威力无穷,程序员:有啊

话不多说,直接上图

代码: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是用来表示这个程序是非正常退出。

猜你喜欢

转载自blog.csdn.net/java03_15/article/details/84967836