Introdução ao JDK

Sylvia Campos, Henrique Borges e Paulo Borba

Centro de Informática

Universidade Federal de Pernambuco

 


Introdução:  

Vimos que para a executar(rodar) um programa são necessários dois passos básicos:

1° passo: Compilar. A compilação transforma o código fonte (.java) em bytecodes (.class).

2° passo: Interpretar. Após a compilação, os bytecodes gerados devem ser interpretados pela máquina virtual, para que o programa seja, de fato, executado.

 

Java Development Kit (JDK):

O JDK é um kit de desenvolvimento Java fornecido livremente pela Sun. Constitui um conjunto de programas que engloba compilador, interpretador e utilitários, fornecendo um pacote de ferramentas básicas para o desenvolvimento de aplicações Java.
A primeira versão deste Kit foi a 1.0. Atualmente existe a 1.1, 1.2, 1.3 e 1.4, cada uma delas com atualizações. 

A versão utilizada neste curso será a JDK 1.4 para plataforma Windows, que pode ser obtida diretamente no site: http://java.sun.com

1. Veja agora alguns comandos disponíveis no JDK (Java Development Kit), o kit básico com ferramentas para programação em Java:

2. Abra o JDK 1.4 (Clique em Start, Run e digite o comando P:\jdk1.4.0\javabat.bat , ou abra diretamente acessando a pasta P:).

3. Compile a classe Cliente usando o comando javac. Para compilar a classe, você deve setar o JDK para o diretório onde o arquivo .java se encontra e digitar a seguinte instrução:

javac nomeDoArquivo.java

Este é o funcionamento básico do javac, mas podemos passar para o comando opções que mudam ligeiramente o comportamento do mesmo. Por exemplo, podemos chamar o javac assim:

javac [-opções] nomeDoArquivo.java

onde opções são, entre outras (para ver as outras digite simplesmente javac na janela do JDK), as seguintes:

-deprecation (mostra quais são os métodos da API de Java que foram usados no programa compilado mas que não deveriam ter sido usados, pois não serão disponíveis em novas versões do JDK)

-classpath nomesDosDiretórios (indica ao javac os diretórios aonde se encontram as classes auxiliares que são necessárias para a compilação de nomeDoArquivo.java, cancelando a indicação definida na variável de ambiente CLASSPATH. Se nenhum CLASSPATH ou "-o classpath" é especificado, as classes auxiliares têm que estar no diretório atual)

Mais detalhes sobre o javac, as suas opções, a variável CLASSPATH, e as outras ferramentas do JDK podem ser encontradas na documentação do JDK.

4. Verifique os erros apresentados pelo javac. Note que os mínimos detalhes são observados pelo javac, assim temos que escrever o programa exatamente do jeito que ele requer. Note que ele mostra a linha aonde o erro aconteceu e explica a razão do erro, tudo em Inglês.

5. Corrija os erros apresentados modificando o arquivo "Cliente.java" e compile de novo até que o javac não apresente mais erros. Note que todas as classes que são usadas pela classe conta devem ser compiladas antes da mesma, para que sejam gerados seus arquivos .class os quais vão ser usados durante a compilação da classe Cliente. Veja então que ele gerou o arquivo "Cliente.class" com os "bytecodes" correspondentes ao código Java. O javac traduziu o programa de Java para a linguagem da JVM.

6. Interprete os “bytecodes” criados com a compilação. Para interpretar (ou executar), você digita

java nomeDoArquivo

no diretório contendo o arquivo "Cliente.class". Leia antes o método main da classe Cliente para entender qual vai ser o comportamento do programa durante a execução. Em particular, digite as informações solicitadas pelo programa. Note que o que você digita automaticamente aparece na janela, mesmo sem o programa ter instruções para isso; o sistema operacional se encarrega de fazer isto.

Este é o funcionamento básico do comando java do JDK, mas podemos passar para o comando opções que mudam ligeiramente o comportamento do mesmo. Por exemplo, podemos chamar o comando java assim:

java [-opções] nomeDoArquivo

onde entre várias opções temos a seguinte:

-classpath nomeDoDiretório (indica ao javac os diretórios aonde se encontram os "bytecodes" das classes auxiliares que são necessárias para a execução de nomeDoArquivo.java, cancelando a indicação definida na variável de ambiente CLASSPATH. Se nenhum CLASSPATH ou -o classpath é especificado, os "bytecodes" das classes auxiliares têm que estar no diretório atual)

Mais detalhes sobre o javac, as suas opções, a variável CLASSPATH, e as outras ferramentas do JDK podem ser encontradas na documentação do JDK.

7. Verifique se a saída gerada pelo programa na janela do JDK é realmente o que você esperava que o programa gerasse. Execute de novo o programa, digitando novos valores e verifique de novo se a saída está de acordo com o esperado. Note que você não precisou compilar o programa novamente para executá-lo.

8. Acesse a API (Application Programming Interface) Java e veja quais são os métodos da classe String que podem ser usados para gerar uma substring. Quais são os parâmetros de cada um destes métodos? Verifique se esses métodos levantam exceções. Altere o método main da classe Cliente para que o número do cartão a ser criado não seja exatamente a string lida do teclado, mas sim uma substring desta, sem o primeiro caracter. Veja que quando um método levanta uma exceção a execução do programa termina; depois aprenderemos como tratar estas para que o programa não termine.

9. Note que para utilizar alguma classe da API de Java basta escrever o comando import, como na classe ContaData, que usa a classe Date da API. No entanto, veja que String é uma classe da API mas não foi necessário importá-la pois ela é do pacote (mais adiante no curso veremos o que é exatamente um pacote) java.lang, que é implicitamente importado por qualquer programa em Java. Analise a classe ContaData e note tudo que foi modificado em relação à classe Conta.

10. Gere a documentação HTML da classe Cliente. Para fazer isso utilize a ferramenta javadoc, da seguinte forma:

javadoc nomeDoArquivo.java

Este é o funcionamento básico do javadoc, mas podemos passar para o comando opções que  mudam ligeiramente o seu comportamento. Por exemplo, podemos chamar o javadoc assim:

javadoc [-opções] nomeDoArquivo.java 

onde opções, entre outras, são as seguintes:

-public (opção para mostrar apenas as classes e métodos públicos)  

-d nomeDoDiretório (especifica o local aonde o javadoc vai salvar os arquivo HTML; o default é salvar no mesmo diretório onde os arquivos estão localizados)

11. Verifique se a documentação foi criada no local que você pediu. Veja que foram criados vários arquivos HTML. Abra o arquivo "index.html" usando um browser qualquer.

12. Escreva um main bem mais completo do que o apresentado e que exercite e teste exaustivamente todos os métodos da classe. Por exemplo, passe parâmetros null, compare valores, crie objetos de diferentes nomes e passe valores de tipos diferentes para ver como o JDK vai se comportar.

13. Repita os passos de 3 até 7 para este novo método main.