Se você está começando em Java, provavelmente já leu ou viu alguns tutoriais sobre como criar um Hello World utilizando o NetBeans, Eclipse ou outro IDE. De fato a utilização de uma IDE é bastante agradável, porem acho vital, para quem está iniciando em Java, não utilizar uma IDE, pois você não aprende o conceito da aplicação e acaba criando alguns vícios. Neste tutorial vou mostrar como criar um Hello World apenas com um editor de texto e uma linha de comando.
Primeiramente, você precisará saber o básico sobre a lógica de programação, caso ainda não saiba, recomento fortemente aprendê-la primeiro.
Você deverá ter o JDK instalado na sua máquina para poder reproduzir os exemplos abaixo, caso ainda não o tenha, veja aqui como instalá-lo.
Você também precisará de um editor de texto. Pode ser até mesmo o Notepad, mas para estes exemplos utilizarei o Notepad++.
Com tudo pronto, vamos começar. Digite o código abaixo e logo abaixo explicarei o que cada linha faz:
public class OlaMundo{public static void main(String[] args){System.out.println(“Hello World!”);}}
Na primeira linha temos:
public class OlaMundo{
Estamos declarando uma classe publica chamada OlaMundo. Em Java, o corpo da classe é definido dentro de chaves (“{” para começar e”}” para finalizar a edição do corpo da classe) diferentemente de outras linguagens como por exemplo, Pascal que utiliza as tags “BEGIN” e “END”. Continuando...
public static void main(String[] args){
Neste trecho do código estamos declarando o único método da nossa classe Java, o método Main. Por definição da JVM, toda classe executável em Java deverá ter um método Main, caso contrário, ao tentar executar esta classe, a JVM não encontrará o metodo Main e será lançada uma exceção “Exception in thread “main” java.lang.NoSuchMethodError: main“. Então, basicamente, sempre que você estiver criando uma classe executável, deverá ter, necessariamente, um método exatamente como esse, se não, sua classe não será executada.
Explicando um pouco mais sobre essa linha, temos o tipo de retorno void (vazio). Se você já conhece Pascal ou qualquer outra linguagem de programação que diferencie Métodos de Funções, ficará confuso, já que nestas linguagens a principal diferença entre Funções e Métodos é que Métodos não tem retorno e Funções o tem. Pois bem, em Java, todo os métodos tem, impreterivelmente, um tipo de retorno especificado na declaração do método. No nosso caso, o tipo de retorno é void (vazio). Quando um método tem um tipo de retorno void, isso quer dizer que você não deverá esperar um retorno deste método.
Ainda nesta linha, há entre parênteses, o argumento do nosso método Main. Tal argumento é um vetor do tipo String chamado args. Isso é fácil de ser identificado, pois o tipo de cada variável vem antes do nome da variável e, nesse caso, além do tipo String, ainda temos os colchetes (“[]“), indicando que esta variável é um array.
Finalizando a análise desta linha, temos as chaves (“{” para começar e”}” para finalizar a edição do corpo do método). Assim como a definição do corpo das classes, os métodos também definem seus corpos com chaves.
System.out.println(“Hello World!”);
Esta linha é responsável por imprimir a mais famosa frase para quem está aprendendo qualquer linguagem de programação, o “Hello World!”. Estamos chamando a função println() da classe System.out que é uma classe padrão do Java. Há muito o que falar sobre esta classe, mas como você está apenas começando, basta saber que esta classe é responsável por imprimir a saída (ou “retorno”) da nossa classe.
Toda linha de comando em Java deverá ser finalizada com um ponto e virgula (“;”), caso contrário você obterá um erro de sintaxe quando for compilar sua classe.
}}
Estas duas ultimas linhas fecham o corpo do método e da classe respectivamente. Observe que não é necessário adicionar ponto e vírgula na definição de classes ou métodos.
Agora que você já sabe o que está fazendo, vamos compilar nossa primeira classe em Java. Salve sua classe em um path qualquer com o nome de OlaMundo.java. Em Java, toda classe pública deverá ser salva em um arquivo. Você não pode ter duas classes publicas no mesmo arquivo. Lembre-se também que o nome do arquivo deverá corresponder com o nome da classe pública, se você alterar o nome da classe para OlaJava, deverá salvar o arquivo como OlaJava.java, caso contrário receberá um erro de compilação.
Abra o prompt do MS-DOS (ou se você estiver usando Linux, abra um console) e digite:
cd <path-onde-salvei-o-arquivo-OlaMundo.java>javac OlaMundo.javajava OlaMundo
Se você tiver dúvidas, veja como eu fiz e a saída que obtive:
Explicando, o comando JAVAC chama o compilador Java (JAVACompiler) e você passa como parâmetro o nome da classe. Se tudo correr bem, o compilador criará um arquivo .class com o nome da sua classe, neste caso, OlaMundo.class. Ao compilar uma classe Java, o compilador transforma o código em bytecode.
O comando JAVA chama a JVM, passando como parâmetro, o nome da classe que queremos executar. Não passe como parâmetro para a JVM o nome do arquivo (OlaMundo.class), passe o nome da classe, caso contrário, a JVM irá procurar uma classe chamada OlaMundo.class e não OlaMundo. A JVM sabe que você está chamando uma classe publica e que toda classe pública tem seu próprio arquivo, então ela subentende que basta procurar por um arquivo .class com o mesmo nome da classe que você solicito que fosse executada.
Sempre quando estou lendo algum tutorial, apostila ou mesmo um artigo sobre programação, eu não me sinto satisfeito enquanto não faço algumas modificações para ver o resultado. A conselho você a fazer o mesmo. Se você entendeu o que expliquei aqui, será capaz de fazer as seguintes atividades:
Alterar o nome da classe, e;
Alterar a saída do nosso programa.
Talvez até outras coisas mais, mas se você conseguir executar as atividades acima, com certeza, terá absorvido o bastante.
Bem pessoal, é isso. Se tiverem alguma dúvida, dificuldade ou mesmo quiser fazer um comentário, será bem vindo. Prometo responder o mais rápido possível.
Abs,
Afonso Lage.
Nenhum comentário:
Postar um comentário