當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Java Runtime halt()用法及代碼示例


Java 運行時 halt() 方法用於強製終止 Java 虛擬機 (JVM) 中當前正在運行的 Java 代碼。不像System.exit(),此方法用於需要立即關閉Java虛擬機(JVM)的極端情況。它不會調用關閉鉤子並具有幹淨的關閉函數。它立即終止代碼,並且不等待執行任何清理或終結任務。不像System.exit(),該方法不建議在正常終止程序時使用。它通常用於突然強製終止程序。在本文中,我們將介紹halt()方法並提供一些清晰簡潔的示例。

用法

Runtime.getRuntime().halt(0); 

同樣,在 System.exit() 中,狀態代碼在此方法中的工作方式也相同。

Status code ‘0 indicates a successful/ normal termination, by convention, and ‘any non-zero number’ is used for abrupt termination. Different numbers is used to distinguish between different errors that occur at a particular line of code.

Java運行時halt()方法示例

我們將使用 halt() 方法討論一些 Java 代碼。我們將看到halt()方法實現和代碼輸出。下麵我們討論了一些示例代碼及其輸出。

示例 1:

以下是 Java 運行時 halt() 的示例:

Java


// Java Program to implement 
// Java Runtime halt() Method 
import java.io.*; 
  
class GFG { 
    // Main Function 
    public static void main(String[] args) 
    { 
        // Displaying the Message 
        System.out.println("Program is running........"); 
  
        // invoking the halt() method 
        Runtime.getRuntime().halt(0); 
  
        // This part of code will not be executed 
        System.out.println("Successfully Completed......"); 
    } 
}
輸出
Program is running........

對上例的解釋:

在上麵的程序中我們可以清楚地看到最後一條打印語句沒有被編譯器執行。這是由於 halt() 方法而發生的。當我們在最後一個打印語句之前執行halt()方法時,它突然關閉程序而不打印最後一個語句。我們還可以注意到,這裏使用的狀態代碼是‘0’,它表示程序正常終止。

示例 2:

下麵是 Java 運行時 halt() 的實現:

Java


// Java Program to implement 
// Java Runtime halt() Method 
import java.io.*; 
  
// Driver Class 
class GFG { 
  
    // this method return the index of element if it is in 
    // the array 
    public static int arrayIndex(int[] arr, int element) 
    { 
        int i; 
        for (i = 0; i < arr.length; i++) { 
            if (arr[i] == element) { 
                return i; 
            } 
        } 
        return -1; 
    } 
    // this method display the error (if any) and shut the 
    // program otherwise this displays the index of element 
    public static void check(int k) 
    { 
        if (k == -1) { 
            System.out.println("Error Occured.........."); 
            // invoking halt method 
            Runtime.getRuntime().halt(1); 
        } 
        else { 
            System.out.println("Index of Element is: " + k); 
        } 
  
        System.out.println( 
            "Sucessfully Executed.........."); 
    } 
  
    // Driver Code 
    public static void main(String[] args) 
    { 
  
        // initializing the Array 
        int[] arr = { 18, 9, 108, 15, 150, 100 }; 
  
        // Displaying the output 1 
        System.out.println("Output 1: "); 
        int k; 
        k = arrayIndex(arr, 108); 
        check(k); 
  
        // Displaying the output 2 
        System.out.println(" "); 
        System.out.println("Output 2: "); 
        k = arrayIndex(arr, 250); 
        check(k); 
    } 
}
輸出
Output 1: 
Index of Element is: 2
Sucessfully Executed..........
 
Output 2: 
Error Occured..........

對上例的解釋:

在上麵的代碼塊中我們創建了arrayIndex()方法。該方法本質上執行線性搜索在我們的數組上有給定的元素。然後,如果找到該方法,則返回該元素的索引,否則負 1 表示該元素不存在於數組中。我們還創建了一個check()如果發現其他調用,該方法將向用戶顯示索引halt()方法將對我們的程序執行異常關閉。

在上麵的代碼中我們可以清楚地發現halt()方法中使用的狀態碼是一個非零數字。這意味著如果出現錯誤,會突然關閉程序而不完成其他掛起的任務。

結論

halt()方法是一種不常見的方法。它通常用於需要立即終止的非常特殊的情況。一般場景不建議使用此方法。此方法不調用關閉鉤子,並且代碼終止不等待執行清理或終結任務。在鏡頭中,它執行了不幹淨的終止。在本文中,我們通過一些簡潔的示例介紹了每個場景。我們有如何在緊急需要時終止我們的程序。



相關用法


注:本文由純淨天空篩選整理自vishuvaishnav3001大神的英文原創作品 Java Runtime halt() Method with Examples。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。