Java Runtime exit() 方法用于终止 Java 虚拟机 (JVM) 中当前运行的 Java 代码。这是一种替代方法System.exit()。尽管如此,它还是不太常用System.exit()因为 Runtime.getRuntime().exit() 通过方法或函数调用引入了不必要的对象创建。同样在System.exit()该方法终止程序并以指定的状态代码退出 JVM。在本文中,我们将通过代码演示来探索它的语法,以及如何在 Java 代码中使用它。
用法:
Runtime.getRuntime().exit(0);
运行时.getRuntime().退出(0):按照惯例,它表示成功/正常终止。
Runtime.getRuntime().exit(1) 或 Runtime.getRuntime().exit(2) 或任何非零数字:表示程序异常终止。 1,2可用于区分不同类型的错误。
运行时示例exit()
我们将讨论一些代码片段,这些代码片段演示了具有不同状态代码的运行时退出方法的用法。
示例 1:
Java
import java.io.*;
class GFG {
public static void main(String[] args) {
//Printing intial statement
System.out.println("This is a simple Java Code.....");
//executing the mentioned function
Runtime.getRuntime().exit(0);
//Printing the final block
System.out.println("Successfully Executed............");
}
}
This is a simple Java Code.....
在上面的代码中,我们可以看到最后一条打印语句没有被编译器执行。出现这样的情况是因为运行时.getRuntime().exit(0);陈述。该语句终止程序并以指定的状态代码退出 JVM。我们可以看到这里使用的状态码是0。因此这是程序的成功或正常终止。
Note : Function Runtime.getRuntime().exit(0); do not returns anything.
示例 2:
Java
import java.io.*;
class GFG{
public static void arraycall(int[] arr,int index){
try{
//Printing the array at given index if index is smaller than length .
System.out.println("Array at index "+index+" is "+arr[index]);
}
catch (Exception e){
//Printing the Error
System.out.println("Error has been occured : "+e );
//executing the mentioned function
Runtime.getRuntime().exit(1);
}
//Printing the final statment. It will be executed when catch block is not executed
System.out.println("Sucessfully executed.....");
}
//Main Function
public static void main(String[] args){
int[] arr = {9, 18, 108, 45, 5};
//Output 1
System.out.println("Output 1 : ");
arraycall(arr,2);
//Output 2
System.out.println();
System.out.println("Output 2 : ");
arraycall(arr,10);
}
}
Output 1 : Array at index 2 is 108 Sucessfully executed..... Output 2 : Error has been occured : java.lang.ArrayIndexOutOfBoundsException: Index 10 out of bounds for length 5
在此 Java 代码中,我们将数组和索引传递给方法‘数组调用’。此方法将打印具有给定索引作为函数参数的数组。如果索引小于给定数组的长度,它只会将输出显示为给定索引处的元素.否则,代码将抛出错误、数组索引越界,然后终止当前运行的 JVM。
在这段代码中,我们可以看到使用的状态码是1,即非零值。这是因为这是程序的异常终止。它表明程序因错误而终止。
结论
我们可以使用它来完全终止 Java 虚拟机,而无需完成任何挂起的任务。
- 我们可以将其与状态代码 0 或任何非零数字一起使用。
- 0 表明这是代码的自然终止。
- 任何非零数字都表明这是代码的异常终止,这意味着发生了错误。我们已经通过清晰的示例看到了状态代码的两种实现。
或者,我们可以使用System.exit(), 自从System.exit()
和Runtime.getRuntime().exit()
函数上是等价的。唯一的区别是Runtime.getRuntime().exit()
引入了不必要的对象创建。
相关用法
- Java Runtime maxMemory()用法及代码示例
- Java Runtime gc()用法及代码示例
- Java Runtime getRuntime()用法及代码示例
- Java Runtime freeMemory()用法及代码示例
- Java Runtime halt()用法及代码示例
- Java Runtime load()用法及代码示例
- Java Runtime runFinalization()用法及代码示例
- Java Runtime availableProcessors()用法及代码示例
- Java Runnable用法及代码示例
- Java RuleBasedCollator clone()用法及代码示例
- Java RuleBasedCollator compare()用法及代码示例
- Java RuleBasedCollator equals()用法及代码示例
- Java RuleBasedCollator getCollationElementIterator(CharacterIterator)用法及代码示例
- Java RuleBasedCollator getCollationElementIterator(String)用法及代码示例
- Java RuleBasedCollator getCollationKey()用法及代码示例
- Java RuleBasedCollator getRules()用法及代码示例
- Java RuleBasedCollator hashCode()用法及代码示例
- Java Random doubles()用法及代码示例
- Java Random nextInt()用法及代码示例
- Java Reentrant getQueueLength()用法及代码示例
- Java ReentrantLock getHoldCount()用法及代码示例
- Java ReentrantLock getOwner()用法及代码示例
- Java ReentrantLock hasQueuedThread()用法及代码示例
- Java ReentrantLock hasQueuedThreads()用法及代码示例
- Java ReentrantLock isFair()用法及代码示例
注:本文由纯净天空筛选整理自vishuvaishnav3001大神的英文原创作品 Java Runtime exit() Method with Examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。