Primeiro Programa em Java usando a linha de comando
Após a instalação do JDK, é possível criar a primeira aplicação na linguagem Java. Para desenvolver programas em Java é necessário escrever o código-fonte, que pode ser criado em qualquer editor de texto comum, por exemplo, Notepad++.
Além disso, o código-fonte deve ser compilado para se tornar uma aplicação executável. O compilador Java é instalado automaticamente com o JDK.
Inicialmente, deve ser criado um diretório no disco rígido para armazenar os arquivos contendo o código-fonte Java, por exemplo, C:/Java
. Neste diretório, cria-se um arquivo de texto renomeado para Main.java
. Após abrir o arquivo no editor escolhido, adiciona-se o seguinte código:
public class Main {
public static void main(String args[]) {
System.out.println("Hello World!");
}
}
Java é uma linguagem orientada a objetos, portanto toda aplicação é estruturada por classes que interagem entre si. Neste exemplo, há apenas uma classe definida, chamada Main
.
A declaração da classe inicia com o modificador de acesso public
, indicando que ela estará disponível para execução direta a partir da linha de comando. Em seguida, utiliza-se a palavra reservada class
, seguida pelo nome da classe (Main
). O conteúdo da classe fica delimitado entre chaves {}
.
Cada classe pode conter diversas variáveis e métodos. No exemplo, está declarado apenas o método main
, que é o método principal em uma aplicação Java, representando o ponto inicial para execução do programa. Por essa razão, é obrigatória a sua presença.
O método main
também é declarado com o modificador public
. A palavra reservada static
indica que o método é estático, ou seja, pode ser invocado diretamente pela JVM, enquanto o termo void
indica que ele não retorna nenhum valor. Esses conceitos serão explicados detalhadamente mais adiante.
Dentro dos parênteses, o método possui um parâmetro: String args[]
. Este parâmetro representa um array de strings chamado args
, que pode armazenar argumentos de texto informados ao iniciar a aplicação por meio da linha de comando. Neste exemplo básico, esses argumentos não são utilizados, porém em programas reais frequentemente são necessários.
O corpo do método vem após a declaração dos parâmetros, delimitado por chaves {}
. Nele ficam as instruções que serão executadas. Neste caso, há somente uma instrução, que realiza a impressão de uma mensagem no console utilizando o método interno do Java System.out.println()
. Este método recebe como argumento o texto que será exibido. Em Java, toda instrução termina obrigatoriamente com ponto e vírgula (;
).
Após criar o código-fonte, é necessário compilá-lo. Para isso, abre-se o Prompt de Comando (Windows) ou Terminal (Linux/MacOS). Primeiramente, navega-se até o diretório onde está localizado o arquivo criado, usando o comando cd
:
cd C:\Java
Em seguida, realiza-se a compilação do programa com o seguinte comando:
javac Main.java
O compilador Java corresponde ao comando javac, seguido pelo nome do arquivo com o código-fonte.
Após a compilação, o código Java é transformado em bytecode, resultando em um novo arquivo chamado Main.class
no mesmo diretório. Este arquivo contém o bytecode que será executado pela JVM (Java Virtual Machine). Para executar esse arquivo, utiliza-se o seguinte comando:
java Main
Nesse caso, não é necessário especificar a extensão .class
.
No sistema operacional Windows, o processo completo fica semelhante ao exemplo abaixo:
C:\Java>javac Main.java C:\Java>java Main Hello World!
Esse processo ocorre em duas etapas: primeiro, o compilador javac
gera um arquivo .class
contendo o bytecode para a JVM. Em seguida, a JVM executa o bytecode contido nesse arquivo através do comando java
.
Contudo, nas versões mais recentes do Java, tornou-se possível executar diretamente o código-fonte sem uma etapa explícita de compilação prévia. O exemplo abaixo ilustra essa situação:
C:\Java>java Main.java Hello World!
Neste caso, o arquivo contendo o código-fonte é passado diretamente ao comando java
, sendo executado sem que seja gerado explicitamente um arquivo .class
.