Opa PedroVSD, essa sua duvida eh muito comum e a explicacao completa pode ser meio longa, mas vou tentar explicar resumido.
// Uma classe chamada ClassePrincipal no pacote padrao
public class ClassePrincipal {
// Esta eh a entrada do programa
// public: pode ser acessada de qualquer classe
// static: este metodo nao precisa de uma instancia para ser chamado
// main: eh um nome especial para a JVM saber que este metodo pode ser chamado como entrar do programa
// String args[]: um array de strings que possui os argumentos passados na hora de iniciar o programa
public static void main (String args[]) {
// Captura o primeiro argumento (comecando por zero) na variavel 'primeiroArgumento'
String primeiroArgumento = args[0];
// Testa se o valor do 'primeiroArgumento' eh 'sair'
if (primeiroArgumento.equals("sair")) {
// Captura o segundo argumento na variavel 'segundoArgumento'
String segundoArgumento = args[1];
// Converte o valor da variavel segundoArgumento em um int
int codigoSaida = Integer.parseInt(segundoArgumento);
// Sai do programa com o valor de saida igual ao 'codigoSaida'
System.exit(codigoSaida);
}
// Caso chegue ateh aqui, vai sair do programa com codigo 0 por padrao, seira o mesmo que System.exit(0)
}
}
Para rodar este programa voce teria que, compilar o programa:
javac ClassePrincipal.java
Rodar o programa com parametros:
java ClassePrincipal sair 3
Verificar o codigo de saida, como uso bash seria algo assim:
echo $?
Acho que voce pode comecar com este basico. Avise se tiver mais duvidas.