System.exit(1);

weixin_37448503發表於2018-01-09

     這個方法是用來結束當前正在執行中的java虛擬機器。如果status是非零引數,那麼表示是非正常退出。

    System.exit(0)是將你的整個虛擬機器裡的內容都停掉了 ,而dispose()只是關閉這個視窗,但是並沒有停止整個application exit() 。無論如何,記憶體都釋放了!也就是說連JVM都關閉了,記憶體里根本不可能還有什麼東西

    System.exit(0)是正常退出程式,而System.exit(1)或者說非0表示非正常退出程式

    System.exit(status)不管status為何值都會退出程式。和return相比有以下不同點:return是回到上一層,而System.exit(status)是回到最上層

    注:在一個if-else判斷中,如果我們程式是按照我們預想的執行,到最後我們需要停止程式,那麼我們使用System.exit(0),而System.exit(1)一般放在catch塊中,當捕獲到異常,需要停止程式,我們使用System.exit(1)。這個status=1是用來表示這個程式是非正常退出。

自己運用中碰到就存下來了,原文忘了是哪位前輩的,非常感謝

相關文章