Termina un programma Java

Rupam Yadav 12 ottobre 2023
  1. System.exit() per terminare un programma Java
  2. return per uscire da una funzione in Java
Termina un programma Java

Questo articolo mostra tutti i modi migliori che possiamo usare per terminare un programma in esecuzione in Java. Analizzeremo alcuni esempi per comprendere la situazione e il modo più semplice per gestirla.

System.exit() per terminare un programma Java

Per terminare un programma Java, possiamo usare il metodo exit() della classe System. È il modo più diffuso per terminare un programma in Java. System.exit() termina la Java Virtual Machine (JVM) che esce dal programma corrente che stiamo eseguendo.

Di seguito è riportato un semplice esempio che utilizza il metodo System.exit(). Si noti che richiede un numero intero, che è il codice di stato. Passiamo 0 alla funzione exit(), che indica che la terminazione avviene con successo senza alcun errore. Uno stato diverso da zero come 1 e -1 dice al compilatore di terminare il programma con qualche errore o messaggio.

Puoi vedere che l’output stampa solo Statement 1 nell’esempio seguente perché il programma termina dopo la sua esecuzione e Statement 2 non è mai stato in grado di essere eseguito.

public class Main {
  public static void main(String[] args) {
    System.out.println("Statement 1");
    System.exit(0);
    System.out.println("Statement 2");
  }
}

Produzione:

Statement 1

Process finished with exit code 0

return per uscire da una funzione in Java

A volte potremmo dover terminare una funzione invece della Java Virtual Machine, ed è allora che entra in gioco la parola chiave return di Java. Questa parola chiave è molto utile quando utilizziamo le funzioni nel nostro programma.

Nel linguaggio formale, è possibile utilizzare return per completare l’esecuzione del metodo. Significa che possiamo usare questo modo per uscire dalla nostra funzione.

Il seguente esempio mostra come possiamo restituire una String dalla funzione. Se il valore è false, restituirà Statement 2 e quindi ignorerà Statement 3 poiché l’esecuzione di questo metodo è stata completata.

public class Main {
  public static void main(String[] args) {
    boolean value = false;

    String getValueFromFunc = func(value);
    System.out.println(getValueFromFunc);
  }

  public static String func(boolean value) {
    if (value) {
      System.out.println("Statement 1");
    } else {
      return "Statement 2";
    }
    return "Statement 3";
  }
}

Produzione:

Statement 2

Ma cosa succede se il valore è vero? Scopriamolo nel prossimo esempio.

L’output stampa sia l’istruzione 1 che l’istruzione3, che è stata ignorata nell’esempio precedente. È successo perché il blocco di istruzioni della condizione if ha println invece di un return.

public class Main {
  public static void main(String[] args) {
    boolean value = true;

    String getValueFromFunc = func(value);
    System.out.println(getValueFromFunc);
  }

  public static String func(boolean value) {
    if (value) {
      System.out.println("Statement 1");
    } else {
      return "Statement 2";
    }
    return "Statement 3";
  }
}

Produzione:

Statement 1
Statement 3
Autore: Rupam Yadav
Rupam Yadav avatar Rupam Yadav avatar

Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.

LinkedIn