CodeGym /Java Blog /Random-IT /System.exit() in Java
John Squirrels
Livello 41
San Francisco

System.exit() in Java

Pubblicato nel gruppo Random-IT
La classe System in Java contiene campi e metodi per gestire il SystemUno di questi è il metodo System.exit () utilizzato nel linguaggio Java quando è necessario terminare un programma o meglio un'istanza JVM attualmente in esecuzione. Qualsiasi riga inserita sotto il metodo exit sarà irraggiungibile e non verrà eseguita.

Sintassi del metodo System.exit()

La sintassi del metodo System.exit() è la seguente.

public void static(int status)
Quindi puoi vedere che è un metodo statico. In realtà, tutti i metodi nella classe System sono metodi statici. Il metodo exit() accetta un numero intero come argomento e non restituisce nulla. Quindi chiamerai il metodo exit come System.exit(i) dove i è un numero intero. Questo numero intero è chiamato "stato di uscita" e può essere un elemento zero o diverso da zero. Se lo stato è zero — exit(0) , il programma verrà terminato con successo. Uno stato diverso da zero — exit(1) indica la chiusura anomala della JVM.System.exit() in Java - 1

Esempio di metodo System.exit()

Vediamo due semplici esempi del metodo exit() con stato pari a zero e interi diversi da zero. Nel nostro primo esempio, c'è un loop su una matrice di colori. Quando il ciclo incontra "verde", l'applicazione deve essere terminata.

import java.lang.*;  
 
class Main {
  public static void main(String[] args) {
    String colors[]= {"red","blue","green","black","orange"};  
    for(int i=0;i<colors.length;i++)  {  
      System.out.println("Color is "+colors[i]);
      if(colors[i].equals("green")) {  
        System.out.println("JVM will be terminated after this line"); 
        System.exit(0); 
      }
    }  
  }
}
Verrà visualizzato il seguente output. System.exit() in Java - 2Il terminale non ha mostrato alcun codice di uscita nell'output perché abbiamo utilizzato zero come stato. Poiché lo zero indica una terminazione riuscita, non è necessario stampare un codice di uscita. Quindi usiamo un numero intero positivo come stato nel nostro prossimo esempio. In questo esempio, creiamo un ciclo che genera numeri casuali compresi tra 0 e 10. Se il numero generato è 2, 3 o 7, l'applicazione deve essere terminata e dovrebbe stampare quale numero causa la terminazione. Vedi il codice qui sotto.

import java.lang.*;  
import java.util.Random; 
 
class Main {
  public static void main(String[] args) {
    System.out.println("program will be terminated when values are 2, 3, or 7");  
    int i;
    Random number=new Random();
    while(true){
      i = number.nextInt(11);
      System.out.println("Random Number is "+i); 
      if(i==2||i==3||i==7){
        System.out.println("Value is "+ i + " your program will be terminated now");  
        System.exit(i);
      }
    }
  }
} 
Quando ho eseguito il codice, ho ottenuto il seguente output. System.exit() in Java - 3Come vedete, il numero 3 ha causato la chiusura anomala della domanda. Ora, vediamo come il codice di stato può essere utilizzato in modo efficace.

Come utilizzare il codice di stato in modo efficace

Il codice di stato è in genere importante quando si esegue il programma Java tramite un'interfaccia della riga di comando (CLI). L'utilizzo del codice di stato è vantaggioso se si desidera utilizzare questo programma per comunicare con altri strumenti, programmi o sistemi operativi standard. Se il programma deve comunicare con un sistema operativo, è possibile utilizzare i codici di stato specifici del sistema operativo. Ad esempio, 128 è il codice di stato standard in UNIX per descrivere "Argomento non valido per uscire".

Quando utilizzare il metodo System.exit

Uno degli utilizzi tipici di System.exit è quando una condizione anomala viene mostrata nel programma ed è necessario terminare immediatamente il programma senza causare ulteriori problemi. Un altro utilizzo è quando è necessario terminare il programma in modo diverso dal metodo principale. Esiste un costrutto speciale chiamato "Shut Down Hooks" in Java, che consente agli sviluppatori di collegare uno snippet di codice che dovrebbe essere eseguito prima della chiusura di JVM. Sono particolarmente utili per effettuare operazioni di pulizia. Il metodo System.exit viene utilizzato per chiamare gli hook di arresto in questi casi.

Conclusione

In questo articolo, abbiamo appreso in dettaglio il metodo System.exit() . Il System.exit significa in Java è un modo per terminare la JVM. Il metodo System.exit non restituisce nulla perché l'applicazione non eseguirà alcun codice sotto il metodo exit() . Discutiamo anche degli usi reali del metodo exit() . Tuttavia, la comunità Java scoraggia l'uso del metodo di uscita fintanto che hai altre opzioni.
Commenti
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION