Fim de um programa Java

Rupam Yadav 12 outubro 2023
  1. System.exit() para Terminar um programa em Java
  2. return para Sair de uma Função em Java
Fim de um programa Java

Este artigo mostra todas as melhores formas que podemos utilizar para terminar um programa em Java. Passaremos por alguns exemplos para compreender a situação e a forma mais fácil de lidar com ela.

System.exit() para Terminar um programa em Java

Para terminar um programa Java, podemos utilizar o método exit() da classe System. É a forma mais popular de terminar um programa em Java. O System.exit() termina a máquina virtual Java(JVM) que sai do programa actual que estamos a executar.

Abaixo está um exemplo simples que utiliza o método System.exit(). Note-se que é necessário um número inteiro, que é o código de estado. Passamos 0 para a função exit(), o que indica que a terminação acontece com sucesso sem qualquer erro. Um estado não-zero como 1 e -1 diz ao compilador para terminar o programa com algum erro ou mensagem.

Pode ver que a saída apenas imprime o Statement 1 no exemplo abaixo porque o programa sai após a sua execução e o Statement 2 nunca foi capaz de ser executado.

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

Resultado:

Statement 1

Process finished with exit code 0

return para Sair de uma Função em Java

Por vezes podemos ter de terminar uma função em vez da máquina virtual Java, e é quando a palavra-chave “retorno” de Java entra em jogo. Esta palavra-chave é muito útil quando estamos a utilizar funções no nosso programa.

Em linguagem formal, o return pode ser utilizado para completar a execução do método. Isto significa que podemos utilizar esta forma para sair da nossa função.

O exemplo seguinte mostra como podemos devolver um String da função. Se o valor for false, retornará Statement 2 e depois ignorará Statement 3, uma vez que a execução deste método foi concluída.

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";
  }
}

Resultado:

Statement 2

Mas e se o valor for verdadeiro? Vamos descobrir no próximo exemplo.

O output imprime o Statement 1, bem como o Statement3, que foi ignorado no exemplo anterior. Aconteceu porque o bloco de declaração da condição if tem println em vez de um 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";
  }
}

Resultado:

Statement 1
Statement 3
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