程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA綜合教程 >> 對於System.exit(0)和System.exit(1)的一般理解,system.exit理解

對於System.exit(0)和System.exit(1)的一般理解,system.exit理解

編輯:JAVA綜合教程

對於System.exit(0)和System.exit(1)的一般理解,system.exit理解


public static void exit(int status)
終止當前正在運行的 Java 虛擬機。參數用作狀態碼;根據慣例,非 0 的狀態碼表示異常終止。

該方法調用 Runtime 類中的 exit 方法。該方法永遠不會正常返回。

調用 System.exit(n) 實際上等效於調用:

 Runtime.getRuntime().exit(n)
參數:
status - 退出狀態。 
通過啟動虛擬機的關閉序列,終止當前正在運行的 Java 虛擬機。此方法從不正常返回。可以將變量作為一個狀態碼;根據慣例,非零的狀態碼表示非正常終止。

虛擬機的關閉序列包含兩個階段。在第一個階段中,會以某種未指定的順序啟動所有已注冊的關閉鉤子 (hook)(如果有的話),並且允許它們同時運行直至結束。在第二個階段中,如果已啟用退出終結,則運行所有未調用的終結方法。一旦完成這個階段,虛擬機就會暫停

如果在虛擬機已開始其關閉序列後才調用此方法,那麼若正在運行關閉鉤子,則將無限期地阻斷此方法。如果已經運行完關閉鉤子,並且已啟用退出終結 (on-exit finalization),那麼此方法將利用給定的狀態碼(如果狀態碼是非零值)暫停虛擬機;否則將無限期地阻斷虛擬機。

System.exit 方法是調用此方法的一種傳統而便捷的方式。  

 參數:status - 終止狀態。按照慣例,非零的狀態碼表明非正常終止。

 1 /**
 2      * Terminates the currently running Java Virtual Machine. The
 3      * argument serves as a status code; by convention, a nonzero status
 4      * code indicates abnormal termination.
 5      * <p>
 6      * This method calls the <code>exit</code> method in class
 7      * <code>Runtime</code>. This method never returns normally.
 8      * <p>
 9      * The call <code>System.exit(n)</code> is effectively equivalent to
10      * the call:
11      * <blockquote><pre>
12      * Runtime.getRuntime().exit(n)
13      * </pre></blockquote>
14      *
15      * @param      status   exit status.
16      * @throws  SecurityException
17      *        if a security manager exists and its <code>checkExit</code>
18      *        method doesn't allow exit with the specified status.
19      * @see        java.lang.Runtime#exit(int)
20      */
21     public static void exit(int status) {
22     Runtime.getRuntime().exit(status);
23     }

例子加強理解:

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

 

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved