System.exit(1)!

Queria saber pra q serve o System.exit(1) ?

Sabendo q o System.exit(0); interrompe a execução, qual seria a utilidade do System.exit(1) ?

http://download.oracle.com/javase/6/docs/api/java/lang/System.html#exit%28int%29

O que seria necessariamente essa finalização anormal??

http://www.gidforums.com/showpost.php?p=58281&postcount=4 :wink:

Complementando os links passados, um exemplo de como ver da prática esse tal de “status code”
O shell guarda o status code do último programa executado em uma variável especial, $? no Unix e %ERRORLEVEL% no MS-DOS. Essa variável pode ser usada em um script ou .bat , para dar um prosseguimento diferente dependendo da execução do programa anterior.

Faça o seguinte teste no prompt do DOS

  • Execute o comando dir. Será listado o conteúdo do diretório atual.
  • Verifique o status code com o comando echo %ERRORLEVEL% . Ele informa zero, pois o programa anterior (dir) teve sucesso.
  • Agora execute o comando dir arquivo_que_nao_existe.texiste . Será exibida uma mensagem de erro.
  • Verifique o status code com o comando echo %ERRORLEVEL% . Ele informa diferente de zero, pois o programa anterior (dir) deu erro.

Tente fazer o mesmo com o seu programa, observando como o valor é determinado pelo que foi passado no System.exit

Oi,

0 sem erro e 1 com erro

Tchauzin!

Serve para dizer ao sistema operacional se o problema encerrou com sucesso ou com alguma falha. O 0 diz ao S.O. que tudo ocorreu bem, qualquer valor distinto significa que houve alguma falha.

Por exemplo:

try { /* se chegar aqui, é porque tudo funcionou bem: retorna 0 para o S.O. */ return 0; } catch (Exception e) { /* ocorreu algum problema: encerra o programa retornando 1 para o S.O. */ System.exit(1); }

Basicamente é isso.

Ok…valew galera…Brigadão !!