Buscar

Projeto Aprenda Em Casa - Curso Java - Completo - 22 Modulos Ptbr

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 127 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 127 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 127 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Módulo de apostila : Java 
Número : 001 
Número de páginas : 
 
É expressamente proíba a reprodução total ou parcial do conteúdo desta apostila sem a prévia 
autorização da High Tec Informática, estando o infrator sujeito as penalidades previstas em Lei. Este 
módulo publica nomes comerciais e marcas registradas de produtos pertencentes a diversas 
companhias, utilizando estas marcas somente para fins editoriais e em benefício dos proprietários das 
marcas, sem nenhuma intenção de atingir seus direitos. 
 
A High Tec Informática não comercializa a nenhum título softwares, sendo que os 
mesmos deverão ser adquiridos pelos alunos através dos distribuidores credenciados. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Vamos iniciar o estudo do Java, conhecendo um pouco da história do mesmo. Em 1991, 
um grupo de funcionários da Sun foi remanejado para uma filial desta, conhecida por Hill 
Road. Como sua primeira tarefa, tinham como objetivo o desenvolvimento de um projeto 
conhecido por “Projeto Green”, que tinha como principal objetivo à criação de tecnologias 
modernas de software para empresas eletrônicas de consumo. Uma das primeiras 
conclusões durante o processo de desenvolvimento foi a de que o sistema não poderia ficar 
preso a plataformas, pois os clientes não estavam interessados no tipo de processador que 
estavam utilizando, e fazer uma versão do projeto para cada tipo de sistema seria inviável 
em todos os sentidos, quando surgiu então como “solução” o sistema operacional GreenOS, 
com a linguagem de programação Oak. 
 
Em 1993 surgiu uma oportunidade para o grupo Green, que foi procurado pela empresa 
Time-Warner, que estava em busca de sistemas operacionais de decodificadores e 
tecnologias de video-on-demand (Conceito de TV a cabo na qual você não espera a hora da 
programação da emissora. Você mesmo determina qual programa que quer ver no 
momento; ou seja, toda a programação está disponível a qualquer momento). Tal fato 
ocorreu no mesmo período em que o NCSA lançou o MOSAIC 1.0, o primeiro navegador 
gráfico para Web. A FirstPerson apostou nos testes de TV da Time-Warner, mas esta 
empresa preferiu optar pela tecnologia oferecida pela Silicon Graphics. 
 
Depois de mais um fracasso de acordo com a 3DO a FirstPerson (novo nome do grupo 
Green) dissolveu-se, sendo que parte do pessoal foi trabalhar para a Sun Interactive com 
servidores digitais de vídeo e, a equipe restante continuou os trabalhos do projeto na Sun. 
Uma das características deste grupo de profissionais era o consumo em grande quantidade 
de café enquanto estavam trabalhando ... em maio de 1995 a Sun anunciou um ambiente 
denominado Java, homenagem às xícaras de café, que obteve sucesso graças a incorporação 
deste ambiente a browsers populares como o Netscape Navigator e padrões tridimensionais 
como o VRML (Virtual Reality Modeling Language - Linguagem de Modelagem para 
Realidade Virtual). 
 
A Sun considera o sucesso do Java na Internet como sendo o primeiro passo para utilizá-lo 
em decodificadores da televisão interativa, em dispositivos portáteis e outros produtos 
eletrônicos de consumo - exatamente como o Java tinha começado em 1991. Sua natureza 
portátil e o projeto robusto permitem o desenvolvimento para múltiplas plataformas, em 
ambientes tão exigentes como os da eletrônica de consumo. 
 
Quais as vantagens de se utilizar o Java? Existem muitas, dentre elas destacamos: 
 
• Portabilidade: O Java é uma linguagem interpretada, ou seja, pode ser executado em 
qualquer plataforma ou equipamento que possua um interpretador Java, e que tenha sido 
especialmente compilado para o sistema a ser utilizado. 
• Robustez: os recursos da linguagem e do ambiente para o tempo de execução garantem 
alta confiabilidade no código gerado. 
• Segurança: além de proteger o sistema do cliente contra possíveis ataques não 
intencionais, o ambiente também deve proteger contra ações premeditadas. Vários 
 
 
estudados, avanços e novas tecnologias estão sendo aplicados para que a linguagem se 
desenvolva nesse sentido. 
• Orientação a Objetos: Java é uma linguagem totalmente orientada a objetos, o que 
permite a herança e a reutilização de códigos de forma dinâmica e estática. 
• Dinamismo: por ter um projeto orientado a objetos, o dinamismo faz parte da natureza 
do Java, o que permite a extensibilidade durante a execução. 
• Alto Desempenho: a linguagem Java suporta vários recursos de alto desempenho, entre 
eles destacamos o multithreading, compilação just-in-time, utilização de código nativo, 
entre outros. O byte-code (iremos estudar sobre este item adiante) do Java possui um 
desempenho aproximadamente 15 vezes inferior que o de um código nativo do 
processador (entenda como linguagem de máquina), porém comparando-se com 
linguagens de Script ( HTML, JavaScript ou o VBScript), ou até mesmo o próprio byte-
code do VB (Visual Basic), possui uma performance muitas vezes superior. Esta 
performance, pela quantidade de esforços aplicados sobre a sua otimização pelos 
desenvolvedores de Java, está cada vez mais sendo aumentada, podendo um dia 
comparar-se com uma linguagem compilada para o processador em específico 
(linguagem nativa). Vale lembrar que já foram criados processadores para suportar 
diretamente o byte-code da linguagem Java. 
• Facilidade: É derivada da linguagem C e C++, possui um vasto material na Web para 
pesquisa e aprendizado (infelizmente a maior parte em inglês), o programador não tem a 
necessidade de gerenciar a memória e os ponteiros, etc... 
 
E então, está convencido a utilizar o Java? 
 
A WWW manifestou-se como vírus, nasceu discretamente, e cresceu repentinamente, se 
expandindo em um prazo de tempo muito curto pelo mundo inteiro. As empresas 
encontram na Rede Mundial uma nova maneira de publicidade, as pessoas, uma nova 
maneira de comunicação. Com o grande acesso, cada dia mais se duplicam os números de 
endereços na internet, cada qual desejando chamar atenção dos usuários (entre tantas 
páginas da Web) ao serviço ou produto desenvolvido pela empresa. Isso exigiu e exige 
talento para diferenciar sua página das demais (o que não é uma tarefa muito fácil). Quanto 
maior a competição, melhor deverá ser a qualidade do seu site. Até que sugiram as páginas 
interativas, as chamadas Web inteligentes, criadas pelos programadores em linguagens tais 
como (C, C++, Visual Basic), que permitiam a interação com o usuário. Parecia tudo muito 
simples, porém as dificuldades logo surgiram. As linguagens de programação 
convencionais não são projetadas a princípio para serem executadas na Web, por esse 
motivo era necessário que o programador criasse suas próprias funções, o que resultaria em 
um trabalho árduo para realizar a simples tarefa de carregar imagens no seu navegador. 
Existe o problema também dos diferentes ambientes, ou seja, plataformas. Pois executáveis 
de programas convencionais não podem ser rodados em diferentes plataformas, e não são 
suportados por diferentes computadores. O java surgiu prometendo uma solução para 
solucionar todos esses problemas dos desenvolvedores para Web. Foi criado uma 
linguagem de multiplataforma que identifica o tipo de computador host ao servidor e envie 
o executável específico para o mesmo. Resumindo, o Java é uma linguagem de 
multiplataformas, independe de ambiente. Poderemos criar executáveis para diferentes 
 
 
ambientes, tais como Windows, Macintosh, Linux. Abaixo seguem dois gráficos 
comparando um programa tradicional de um programa Java: 
 
Programa Tradicional 
 
 
 Compilador 
 
 
 
 
 
 
 
 
 
 
 
 
Linux 
Mac 
Windows 
Arquivo binário 
Windows 
Arquivo binário Mac 
Arquivo binário Linux
 
Programa Java: 
 
 
 
 
 
 
 
 
 
 
 
 
Além deste conceito, o Java gera executáveis pequenos, que permitem o rápidocarreg nto da página Web, dá maior importância à segurança permitindo que o 
compu
especi
 
O Jav
gráfic
compi
proces
via ou
compi
(possu
execu
não fu
Bytecode 
independente 
da plataforma 
Interpretada 
(Windows) 
Interpretada 
(Mac) 
Interpretada 
( Linux) 
 
 
ame
tador servidor tenha controle sobre o que será acessado pelo computador cliente, 
ficando o que poderá ou não ser acessado pelo mesmo. 
inguagem de programação feita para ser utilizada em um ambiente de 32 bits 
a é uma l
o (portanto, não funciona no Windows 3.1/3.11 ou no MS-DOS puro). Possui um 
lador muito pesado e torna-se lento demais quando aplicado a máquinas de 
samento mais simples, como um 486 (que possui um processamento escalar de uma 
 uma instrução sendo executada por ciclo de clock). O ideal é utilizar, tanto para a 
lação quanto para a execução de programas Java, uma máquina Pentium ou superior 
i um processamento superescalar de duas vias - paralelismo, duas instruções sendo 
tadas no mesmo ciclo de clock). Isto não significa que um programa feito em Java 
ncione numa máquina 486. 
 
É muito importante destacar que o Java não é uma linguagem exclusiva de programação 
para a Web. Com o Java poderemos gerar aplicativos comerciais complexos. Através da 
API de banco de dados do Java, conhecida por JDBC, o desenvolvedor tem uma interface 
padrão para acessar banco de dados relacionais. 
 
Citamos que uma das vantagens do Java é a orientação a objetos, vamos falar um pouco 
mais sobre este tópico em específico, para isso, vamos estudar as características da mesma. 
Para compreender corretamente o que significa, vamos começar estudando as classes. 
 
CLASSE 
 
Classe é a descrição de um grupo de objetos que possuam atributos e comportamentos 
iguais, e que se relacionam da mesma forma com os outros objetos. Para uma rápida 
compreensão, a estrutura de uma classe pode ser comparada com uma estrutura em C 
(struct), sendo que, entre outras características, uma classe pode possuir métodos (funções) 
e implementações de segurança (níveis de acesso). Os atributos das classes seriam as 
variáveis da estrutura. 
 
 
OBJETO 
 
Um objeto não é nada mais do que uma instância de uma classe, ou seja, um exemplar da 
classe instanciada representado na memória. Fazendo uma comparação com a estrutura da 
linguagem C (struct), podemos dizer que a classe seria a estrutura e o objeto seria a variável 
da estrutura. 
 
IDENTIDADE 
 
Embora os objetos da mesma classe tenham as mesmas características e funções, e talvez 
até os mesmos valores de atributos, cada nova instância da classe é representada 
separadamente na memória. 
 
ENCAPSULAMENTO 
 
Técnica que permite ocultar os atributos da classe, sendo que somente os métodos da classe 
própria podem ler ou alterar estes atributos. Isto faz com que não haja necessidade de saber 
como a classe foi implementada internamente, deixando que os métodos internos da classe 
se preocupem com isto. 
 
 
 
 
 
 
HERANÇA 
 
A herança permite que as classes compartilhem os seus atributos e métodos com outras 
classes, utilizando para isto um relacionamento esquematizado de forma hierárquica. Na 
herança existem dois tipos de classes que devem ser levadas em consideração: 
 
• superclasse: a classe da qual uma outra classe (subclasse) herda as suas características. 
• subclasse: a classe que herdou as características de uma outra classe (superclasse). 
 
Exemplo: 
java.lang.Object 
 | 
 +----java.awt.Component 
 | 
 +----java.awt.Container 
 | 
 +----java.awt.Window 
 | 
 +----java.awt.Dialog 
 | 
 +----java.awt.FileDialog 
 
 
POLIMORFISMO 
 
Uma subclasse pode implementar novamente um método ou atributo já implementado por 
uma classe da qual é herdeira. 
 
 
 
 
 
Agora que você já tem uma pequena noção do que é o Java e como o mesmo opera, nosso 
próximo passo é saber como obte-lo na Web, para isso, siga os passos abaixo: 
 
1. Acesse o site http://java.sun.com/j2ee/download.html, será apresentada o seguinte 
conteúdo no seu navegador: 
 
 
 
2. Clique sobre o link “J2EETM SDK", você será levado a seguinte janela: 
 
 
 
 
 
3. Aqui você tem algumas notas sobre a versão, principalmente sobre a 
compatibilidade da mesma que, é compatível com as plataformas: Solaris, Windows 
NT, Windows 2000 Professional e Linux. Caso você esteja utilizando o Windows 
98 ou ME, deverá procurar uma versão compatível no site para download. Não tente 
instalar esta nestes sistemas operacionais. Clique então no link “Software e 
Documentation”, você será levado a seguinte janela: 
 
 
4. Neste ponto você deverá selecionar a plataforma que irá utilizar para executar o 
sistema. No nosso caso estamos realizando o download da versão para o Windows 
2000. Selecione a sua na caixa de seleção SELECT A PLATFORM e em seguida, 
clique no botão CONTINUE, você será levado a seguinte janela: 
 
 
 
 
 
 
 
 
 
 
 
 
5. Nesta página você tem na verdade as cláusulas e condições para o uso do software 
que está baixando. Ao final desta página, clique sobre o botão ACCEPT. Você será 
então levado a seguinte página: 
 
 
 
 
6. Neste ponto, basta você clicar no botão FTP Download para que o download seja 
iniciado, sendo então apresentada a seguinte janela: 
 
 
 
7. Selecione a opção “SAVE THIS PROGRAM TO DISK”, será então apresentada a 
seguinte janela: 
 
 
 
 
 
 
8. Escolha uma pasta onde o arquivo será salvo e em seguida clique no botão 
SALVAR. O Download finalmente terá inicio, onde será apresentada a seguinte 
janela apresentando o progresso da operação: 
 
 
 
9. Ao final deste procedimento, será apresentada a seguinte janela: 
 
 
 
10. Clique no botão CLOSE. 
11. Clique agora no botão “INICIAR” ... “EXECUTAR”; 
12. Posicione o sistema na pasta onde você salvou o arquivo que acabou de baixar, 
selecione o mesmo e clique em ABRIR; 
 
 
 
 
 
 
 
 
 
 
 
 
13. Ao clicar no botão de ABRIR, conforme orientado no procedimento anterior, o 
sistema irá retornar à janela EXECUTAR, clique então no botão OK: 
 
 
 
14. O procedimento de instalação tem inicio, sendo exibida a seguinte janela: 
 
 
 
15. Aqui o sistema está descompactando os arquivos necessários à instalação. Ao final 
deste procedimento, será apresentada a seguinte janela: 
 
 
 
 
 
16. Esta primeira janela é a famosa “Boas Vindas”. Clique no botão NEXT, será 
apresentada a seguinte janela: 
 
 
 
17. Esta janela contém os termos de licença e uso do Software em instalação, caso 
concorde com os mesmos, clique no botão YES, será então apresentada a seguinte 
janela: 
 
 
 
 
 
18. Nesta janela você deverá indicar a pasta na qual o aplicativo será instalado. 
Aconselhamos deixar a opção padrão. Clique em seguida em <NEXT>, será então 
apresentada a seguinte janela: 
 
 
 
 
 
19. Na janela acima você deverá marcar o(s) componente(s) que será(ão) instalado(s). 
Deixe como mostra a figura acima. Clique no botão NEXT, será então apresentada a 
seguinte janela: 
 
 
 
20. A barra de progresso indica o andamento do processo de instalação do software em 
questão. Ao final deste procedimento será apresentada a seguinte janela: 
 
 
 
 
21. A janela acima indica que a instalação foi finalizada. Clique no botão FINISH, a 
instalação está concluída. 
 
 
 
 
 
Antes de partir para o estudo da linguagem Java é importante conhecer alguns princípios 
básicos do ambiente de desenvolvimento do Java. Os sistemas em Java são formados por 
várias partes, conformepodemos observar na listagem abaixo: 
 
• Um ambiente; 
• A linguagem; 
• As Applications Programming Interface – APIs; 
• Bibliotecas de classes. 
 
Este esquema opera através das seguintes fases: 
 
1. A fonte do programa (simplesmente programa) é gerada em um editor de textos 
qualquer, que tenha suporte para salvar os dados sobre o formato somente texto e 
salvo no disco do computador. 
 
 
 
2. O programa deverá ser compilado, para que o compilador gere os bytecodes, 
armazenando os mesmos em disco e, tal solicitação deverá ser realizada através do 
comando JAVAC, a ser utilizado no Prompt de comando: 
 
 
 
 
 
3. Entra em cena o que chamamos de “carregador de classe”, que irá alocar os 
bytecodes gerados na memória do equipamento; 
4. Agora será executado o “verificador de bytecode”, que terá a função de verificar se 
todos os bytecodes são válidos e que os mesmos não violam as restrições de 
segurança do Java; 
5. Entra em cena o Interpretador Java, que irá ler os bytecodes e traduzi-los para uma 
linguagem que possa ser interpretada pelo equipamento (leia computador). 
 
Logo podemos afirmar que são necessárias as fases seguintes para que o programa em Java 
possa ser executado: 
 
 
 
Vale lembrar que na primeira etapa citada acima, o programa Java além de ser gerado em 
um editor de textos compatível com o modo “Somente texto”, deverá ser salvo com a 
extensão Java (nome_arquivo.java). 
 
Existem também os ambientes de desenvolvimento integrado, que podem facilitar a vida de 
programadores mais experientes, porém a principio vamos gerar nossos códigos em um 
editor de textos simples. Dentre os ambientes integrados de desenvolvimento, podemos 
destacar: 
 
• Jbuilder da Borland; 
• Visual J++ da Microsoft. 
 
Para executar o aplicativo Java (fase 5) através do Interpretador, utilizamos o comando 
JAVA, a ser seguido do nome do aplicativo e deverá ser digitado no Prompt de comando: 
 
 
 
 
 
Quando falamos de Java e do carregador de classes, estamos na verdade nos referindo a 
dois tipos de programas para onde são carregados os arquivos .class: 
 
• Aplicativos: podemos comparar um programa aplicativo a um programa de agenda 
eletrônica ou a uma planilha eletrônica, e este tem por característica o fato de ser 
carregado e executado no próprio computador do usuário; 
• Applet: programas de pequeno porte, que na maioria das vezes estarão localizados 
em um computador remoto e que serão acessados pelos usuários através de um 
programa específico, o navegador Web. Neste momento os applets serão 
carregados no navegador através de sua comunicação com o computador remoto, 
executado no próprio navegador e descartado ao final da execução. 
 
Sabendo destes detalhes, vamos ao nosso primeiro programa em Java. O programa terá um 
objetivo simples, o de enviar (imprimir) uma linha de texto no monitor de seu computador. 
Siga os passos abaixo: 
 
1. Abra o seu editor de textos Bloco de Notas do Windows; 
2. Digite na área de trabalho, a seguinte sequência de comandos: 
 
 
 
Antes de compilar e executar o programa vamos explicar os códigos digitados um a um, 
para que você conheça a estrutura básica de um programa em Java. 
 
Primeira linha: public class Aula1 { 
 
Um programa Java, por mais simples que seja, deverá possuir pelo menos uma definição de 
classe (a ser informada pelo desenvolvedor). Observe que publicamos a definição de uma 
classe (class) e esta tem o nome de Aula1. Observe que iniciamos o nome da classe com 
uma letra maiúscula e, o Java diferencia letras maiúsculas e minúsculas e, não obedecer tal 
regra, com certeza irá gerar um erro de sintaxe adiante. O fato de iniciarmos o nome da 
classe com um caracter maiúsculo não se deu por acaso. Por convenção utilizamos esta 
regra: utilizar a primeira letra do nome de uma classe como maiúscula. 
 
A palavra chave Public não é padrão, ou seja, poderemos utilizar outras para definir classes, 
porém como estamos iniciando no Java, iremos a principio, utilizar apenas esta. 
 
Segunda linha: public static void main(String args[]) 
 
 
 
Aqui temos outra regra: um aplicativo Java começa automaticamente executando em main. 
Observe que este é seguido por parênteses, indicando que ele é um bloco de construção de 
programa, também conhecido por método. Poderemos ter um ou mais métodos, porém 
sempre teremos que ter o método conhecido por main (para aplicativos Java). Se este 
método for ignorado, o interpretador Java não terá condições de executar este aplicativo. 
Observe que antecedendo o main, temos a palavra-chave void, que neste caso indica que o 
método irá executar uma tarefa, porém não retornará nenhuma informação a outro objeto, 
quando a execução estiver finalizada. 
 
Terceira linha: { 
 
Aqui temos o inicio do corpo da estrutura de comandos do método. Assim como marcamos o inicio 
do corpo da estrutura de comandos do método, deveremos ter posteriormente o marcador de fim 
do corpo da estrutura “}” 
 
Quarta linha: System.out.println("Projeto Aprenda em Casa"); 
 
Aqui estamos solicitando para que o sistema efetue a impressão do conteúdo da String (“Projeto 
Aprenda em Casa”) na janela de comando (out.println). A linha completa acima é conhecida por 
instrução. 
 
Quinta linha: } 
 
Aqui temos o final do corpo da estrutura de comandos do método. 
 
Sexta linha: } 
 
Assim com tivemos o marcador de inicio e fim do corpo da estrutura de comandos do método, 
temos aqui o final do conteúdo da classe Aula1. 
 
Você deverá salvar o arquivo com a extensão JAVA e o mesmo deverá possuir o mesmo 
nome dado a classe, ou seja, Aula1.java, caso contrário não será possível a compilação de 
nosso programa. 
 
Em seguida, abra o prompt de comando e compile nosso programa: 
 
 
 
Quando não existem erros na fonte a ser compilada, será gerado um arquivo com a extensão 
class, que terá justamente os bytecodes do java de nosso aplicativo e, em seguida, 
poderemos executar nosso aplicativo, através do comando: 
 
 
 
 
 
 
 
 
Módulo de apostila : Java 
Número : 002 
Número de páginas : 
 
É expressamente proíba a reprodução total ou parcial do conteúdo desta apostila sem a prévia 
autorização da High Tec Informática, estando o infrator sujeito as penalidades previstas em Lei. Este 
módulo publica nomes comerciais e marcas registradas de produtos pertencentes a diversas 
companhias, utilizando estas marcas somente para fins editoriais e em benefício dos proprietários das 
marcas, sem nenhuma intenção de atingir seus direitos. 
 
A High Tec Informática não comercializa a nenhum título softwares, sendo que os 
mesmos deverão ser adquiridos pelos alunos através dos distribuidores credenciados. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
No módulo de aula anterior geramos nosso primeiro programa em Java, que tinha um 
objetivo simples, o de enviar uma linha de texto para a tela do computador. Para isso, 
utilizamos o comando System.Out.PrintLn... Uma variante deste comando seria o 
System.Out.Print que, tem o mesmo objetivo, porém não executa quebra de linha. Vamos 
criar nosso segundo exemplo em Java e ao mesmo tempo explicar a diferença entre estes 
dois comandos. Siga os passos abaixo: 
 
1. Abra o seu editor de textos “Blocos de Notas”; 
2. Digite a sequência de comandos abaixo: 
 
 
 
3. Salve o arquivo como “exemplo2.java”: 
 
 
 
4. Abra o prompt de comando e acione a pasta onde o arquivo “exemplo2.java” foi 
salvo: 
 
 
 
 
 
5. No prompt de comando, digite o comando javac + o nome do arquivo a ser 
compilado: 
 
 
 
6. Ainda no prompt de comando, execute o programa exemplo2, que acabamos de 
compilar e não apresentou erros, através do comando “java exemplo2”. 
 
Como resultado, você terá impressona primeira linha o conteúdo “Projeto Aprendaemcasa” 
e, em linhas separadas, teremos o conteúdo “www.aprendaemcasa.com.br” e em outra o 
conteúdo “aprendaemcasa@aprendaemcasa.com.br”. 
 
A diferença entre os métodos “print” e “println” do comando System.out está no fato de 
que o primeiro não executa uma quebra de linha após a sua execução, procedimento este 
que ocorre no segundo método. 
 
Temos também uma outra forma de executar uma quebra de linha, sem que um novo 
comando System.out seja necessário. Observe o exemplo abaixo: 
 
 
No Script acima estamos utilizando o que chamamos de caracteres especiais, que possuem 
funções específicas para os métodos print e println. Observe que no exemplo acima, os 
caracteres especiais são: 
 
/n 
 
O primeiro caracter, a barra invertida (\) é chamado de caracter de escape e é obrigatório o 
seu uso, seguido de um uma sequência de escape (neste caso o caracter n) para que uma 
determinada ação seja executada. 
 
 
 
Veja na tabela abaixo, os caracteres especiais possíveis para o método Print e PrintLn: 
 
Sequência escape Objetivo 
\n Indica a quebra de linha, ou seja, o cursor da tela será posicionado no 
inicio da próxima linha livre. 
\t Faz com que o cursor seja movido para a próxima parada de tabulação. 
\r Realiza o que chamamos de retorno de carro, ao seja, o cursor volta para 
o inicio da linha atual (sem que ocorra a quebra). 
\\ Possibilita a impressão do símbolo de barra invertida, caso seja 
necessário 
\” Possibilita a impressão do caracter aspas duplas. 
 
 
Assim como em outras linguagens de programação, na Java também utilizamos as variáveis 
e, o trabalho com as mesmas está diretamente ligado com alguns conceitos de memória. 
 
Quando iniciamos uma variável, na verdade estamos criando uma posição na memória do 
computador e, cada variável passa a ter: 
 
o Um nome; 
o Um tipo de dado que irá armazenar; 
o Um tamanho; 
o Um valor; 
o Uma posição na memória. 
 
Ao determinar um valor a uma variável, este passará a fazer parte da referida posição de 
memória e, caso já exista um valor anterior armazenado, o mesmo irá substitui-lo, em 
outras palavras, o valor anterior será destruído. 
 
Ao ler o valor de uma variável (posição de memória), o processo é apenas de consulta e, ao 
contrário do que citamos anteriormente, o valor não é destruído. 
 
Veja abaixo exemplos de declarações de variáveis no Java: 
 
... 
... 
String primeironome, sobrenome; 
Int numero1, numero2, soma; 
... 
... 
soma = numero1 + numero2; 
... 
... 
 
Observe que na primeira linha estamos declarando duas variáveis do tipo String, que são: 
 
 
 
o primeironome; 
o sobrenome. 
 
Em seguida estamos declarando três variáveis do tipo numéricas, que são: 
 
o numero1; 
o numero2; 
o soma. 
 
Quando declaradas, as variáveis já ocupam uma posição de memória, que passará a ser 
referenciada pelo nome atribuído a mesma. A principio estas terão apenas um nome de 
referência e um tipo de dado. 
 
Durante a execução do Script é que o valor que a mesma irá armazenar lhe será atribuído, 
como por exemplo, na linha em que é lançado à variável SOMA o conteúdo (processo de 
leitura) da variável NUMERO1 somado (operação aritmética) ao conteúdo (processo de 
leitura) da variável NUMERO2. 
 
Assim como as variáveis, as operações aritméticas são comuns em qualquer linguagem de 
programação, e não poderia ser diferente no Java. Na tabela abaixo você tem a listagem dos 
principais operadores aritméticos a serem empregados em seus programas Java: 
 
Operador Java Função Exemplo de expressão no 
Java 
+ adição Numero1 + 10; 
- subtração Numero1 – 10; 
* multiplicação Numero1 * 10; 
/ divisão Numero1 / 10; 
% módulo Numero1 % Numero2; 
 
Assim como em outras linguagens em programação, no Java as expressões aritméticas 
deverão ser escritas sobre a forma de linha reta e, os parênteses são empregados no Java 
utilizando-se da mesma lógica empregada nas expressões algébricas. Como por exemplo: 
 
Queremos dividir por C, o resultado da soma de A com B, assim sendo, escreveríamos o 
seguinte código: 
 
C/(A+B); 
 
As seguintes regras são seguidas no que se diz respeito a precedência de operadores: 
 
1. Os operadores contidos nas expressões relativas aos pares de parênteses serão 
executados primeiro; 
2. Com base na regra 1, os parênteses devem ser empregados para forçar a ordem de 
avaliação das expressões, segundo a necessidade do desenvolvedor; 
 
 
3. No caso de parênteses aninhados, os operadores constantes no par mais interno de 
parênteses serão aplicados primeiramente; 
4. A seguinte tabela contém a ordem de execução das operações: 
 
 
Operador Função Precedência 
( ) parênteses Avaliados primeiro e, em caso de aninhamento de pares 
de parênteses, a expressão do par mais interno será 
processada primeiro. Dentro de cada par de parênteses, 
as expressões serão avaliadas da esquerda para a direita. 
* / % Multiplicação, 
divisão e módulo 
Avaliados após a ordem dos pares dos parênteses e, em 
caso de incidência destas operações, serão avaliados da 
esquerda para a direita. 
+ - Soma e subtração Avaliados por último e, em caso de incidência destas 
operações, serão avaliados da esquerda para a direita. 
 
É aconselhado o uso de pares de parênteses em expressões aritméticas, mesmo que a 
construção da mesma seja simples e não os exija, pois tal prática torna as expressões 
aritméticas mais fáceis de serem lidas e o código se torna mais fácil de ser interpretado. 
 
Usando classes pré-definidas 
 
Os primeiros exemplos que desenvolvemos no nosso curso utilizaram a saída padrão do 
prompt de comando, porém a grande maioria dos sistemas visa utilizar a interface gráfica e 
amigável que caracterizou o ambiente Windows. 
 
Um dos recursos mais simples neste sentido são as janelas (caixas) de diálogo para exibir a 
saída de dados (mensagens ao usuário). O Java2 inclui uma classe conhecida por 
JOptionPane, que tem por finalidade proporcionar ao desenvolvedor o uso de caixas de 
diálogo para que se possa exibir informações que se julgue importante. 
 
Veja no exemplo abaixo o uso de uma caixa de diálogo para exibir uma simples mensagem 
ao usuário: 
 
 
 
 
 
** listagem exibida na janela acima: 
 
import javax.swing.JOptionPane; 
public class exemplo4 { 
public static void main ( String args[] ) 
{ 
JOptionPane.ShowMessageDialog ( null,"Projeto\nAprenda\nem\nCasa"); 
system.exit( 0 ); 
} 
} 
 
O Java2 tem como característica um rico conjunto de classes predefinidas e, o 
desenvolvedor poderá utilizar as mesmas ao invés de ter que gerar (criar) todo o código 
necessário para alcançar seus objetivos. 
 
Digite o código acima, salve o arquivo como “exemplo4.java", compile e execute o 
programa. 
 
Uma das facilidades do Java está relacionada com o aproveitamento das classes já 
disponíveis na linguagem, facilitando assim a vida do desenvolvedor que, ao invés de ter de 
“fabricar o pneu do carro”, deverá apenas “encaixá-lo” na roda para que em seguida possa 
sair “rodando” com o mesmo. O programa acima é um típico exemplo deste recurso. 
Vamos explicar linha a linha os passos executados (exceto as linhas de comandos que já 
conhecemos). 
 
import javax.swing.JOptionPane; 
 
A linha acima é na verdade uma instrução Import. Este comando na verdade tem duas 
funções: 
 
1. Identificar a classe requerida; 
2. Carregar a classe requerida para posterior compilação. 
 
Na verdade estaremos utilizando uma janela de avisos (gráfica), que é obtida através da 
classe JoptionPane e, esta classe está contida em um pacote de classes chamado de 
javax.swing. O nome do pacote é representado fisicamente por uma pasta no disco. Os 
pacotes da Java API são normalmente armazenados no diretório JAVAX, que por sua vez é 
dividido em diversos outrosdiretórios, entre eles o swing. 
 
 JOptionPane.ShowMessageDialog ( null,"Projeto\nAprenda\nem\nCasa"); 
 
A linha acima informa ao compilador que carregue a classe JoptionPane, que faz parte do pacote 
carregado na linha estudada acima. O pacote em questão contém classes conhecidas por 
GRAPHICAL USER INTERFACES – GUIS. 
 
Se você programa em Delphi, provavelmente irá relacionar o comando acima ao famoso: 
 
 
 
Application.Messagebox .... 
 
Aqui teremos uma janela de aviso padrão, onde o título desta não será exibido (pois 
inserimos no local de referência do título o parâmetro NULL e, a mensagem da janela de 
diálogo será a frase PROJETO APRENDA EM CASA, apresentada com quebra de linhas. 
 
system.exit( 0 ); 
 
Em seguida forçamos o término da execução do programa através do comando EXIT, da 
classe system. 
 
Importante: Ao utilizar uma interface gráfica, será necessário o uso do comando acima 
pára forçar o término do aplicativo. 
 
A classe empregada no comando acima é a SYSTEM, que faz parte do pacote 
JAVA.LANG. Mas você deve estar perguntando: 
 
Porque não importamos o pacote de classes JAVA.LANG, assim como fizemos com o 
pacote JAVAX.SWING? A resposta é simples: alguns pacotes de classes são carregados 
automaticamente pelo Java, entre eles o JAVA.LANG; 
 
O principal objetivo das últimas páginas deste módulo de aula foi de apresentar ao aluno o 
que são pacote de classes, como carregá-los e encerrá-los. Tais conhecimentos serão 
fundamentais no decorrer do curso. Vamos imaginar um exemplo simples, onde o usuário 
irá entrar com dois números e o sistema irá apresentar a soma destes dois números. Veja a 
fonte abaixo: 
 
import javax.swing.JOptionpane; 
 
public class Soma { 
 public static void main ( String args[] ) 
 { 
 String numero1, numero2; 
 int num1, num2, total; 
 
 numero1 = JOptionpane.showInputDialog(“Digite um numero:”); 
 numero2 = JOptionpane.showInputDialog(“Digite um segundo numero:”); 
 num1 = Integer.parseInt (numero1); 
 num2 = Integer.parseInt (numero2); 
 total = num1 + num2; 
 JOptionpane.ShowMessageDialog(null,”A soma dos numeros e” + total, 
“Resultado total”,JOptionPane.PLAIN_MESSAGE); 
 System.exit(0); 
 } 
} 
 
 
 
Na fonte acima apresentamos uma série de novidades. A primeira delas está na declaração 
de variáveis em programas Java. A sintaxe para este procedimento é a seguinte: 
 
Tipo_variável lista_variáveis_separadas_por_virgula; 
 
Na primeira linha criamos duas variáveis (numero1 e numero2) do tipo String e, na segunda 
linha criamos três outras variáveis (num1, num2 e total). 
 
Para que uma variável seja utilizada no decorrer de um programa Java, ao contrário de 
outras linguagens de programação, deverá ser declarada antes do seu uso/emprego. 
 
Em seguida uma outra novidade, o uso de janelas gráficas para a entrada de dados, 
conforme mostra a linha abaixo: 
 
 numero1 = JOptionpane.showInputDialog(“Digite um número:”); 
 
Nesta sintaxe, será exibida uma caixa de diálogo padrão com uma caixa de edição, para que 
você possa inserir dados via teclado. Existirá uma frase antes ou acima da caixa de edição, 
que é justamente a String apresentada pelo desenvolvedor. Esta String orienta o usuário no 
tipo de informação que deverá ser fornecida. O conteúdo digitado pelo usuário será 
armazenado na variável numero1 (neste caso). O mesmo ocorre na linha seguinte, sendo 
que o conteúdo será armazenado na variável numero2. 
 
Observe que as variáveis numero1 e numero2 são do tipo String, ou seja, não podem sofrer 
nenhuma espécie de processamento aritmético. Mas como fazer se necessitamos somar o 
valor das duas entradas? Aqui temos uma outra novidade, o uso de funções. Observe as 
linhas abaixo: 
 
 num1 = Integer.parseInt (numero1); 
 num2 = Integer.parseInt (numero2); 
 
Aqui estamos na verdade “jogando” para a variável num1 e num2 o conteúdo das variáveis 
numero1 e numero2 respectivamente, transformados de string para números inteiros. 
 
Em seguida estamos armazenando na variável total a soma das duas variáveis (num1 e 
num2) 
 
total = num1 + num2; 
 
Posteriormente estamos exibindo em uma caixa de diálogo o resultado desta soma: 
 
JOptionpane.ShowMessageDialog(null,”A soma dos numeros e” + total, “Resultado 
total”,JOptionPane.PLAIN_MESSAGE); 
 
 
 
 
 
 
Vimos até este ponto alguns modelos de caixa de diálogo padrão do Java. Veja na tabela abaixo 
os tipos existentes: 
 
Tipo de janela objetivo 
JOptionPane.ERROR_MESSAGE Tem o objetivo de exibir uma janela de diálogo 
com uma mensagem de erro ao usuário 
JOptionPane.INFORMATION_MESSAGE Tem o objetivo de exibir uma janela de diálogo 
do tipo mensagem de informação ao usuário 
JOptionPane.WARNING_MESSAGE Tem o objetivo de exibir uma janela de diálogo 
do tipo mensagem de advertência ao usuário 
JOptionPane.QUESTION_MESSAGE Tem o objetivo de exibir uma janela de diálogo 
do tipo interrogação (pergunta) 
JOptionPane.PLAIN_MESSAGE Exibe uma janela de diálogo simples, contendo 
apenas uma mensagem. Esta é a única janela 
de diálogo que não possui um ícone próprio de 
representação 
 
Veja os exemplos a seguir: 
 
1) No primeiro exemplo (fonte a seguir), estamos utilizando uma janela de diálogo do tipo 
INFORMATION_MESSAGE: 
 
import javax.swing.JOptionPane; 
public class Grafico1 { 
 public static void main ( String args[] ) 
 { 
 JOptionPane.showMessageDialog (null, "Curso Java", "Projeto Aprenda em Casa", 
JOptionPane.INFORMATION_MESSAGE); 
 System.exit(0); 
 } 
} 
 
Ao compilar o exemplo acima, teremos como resultado a seguinte janela de diálogo: 
 
 
 
 
 
 
Vamos a algumas considerações: 
 
a) Ao utilizar o parâmetro INFORMATION_MESSAGE, automaticamente será adicionado o 
ícone representado pela letra (I), conforme podemos observar no gráfico; 
b) A segunda String da linha de comando do JOptionPane representa a frase que será 
apresentada no interior da janela de diálogo; 
c) A terceira String da linha de comando do JOptionPane representa a frase que será 
apresentada como linha de título da janela de diálogo. 
 
 
2) Veja agora um exemplo com uma caixa de diálogo do tipo WARNING_MESSAGE: 
 
 
 
import javax.swing.JOptionPane; 
public class Grafico1 { 
 public static void main ( String args[] ) 
 { 
 JOptionPane.showMessageDialog (null, "Area Exclusiva para Socios", "Projeto 
Aprenda em Casa", JOptionPane.WARNING_MESSAGE); 
 System.exit(0); 
 } 
} 
 
 
 
 
Vamos a algumas considerações: 
 
a) Observe que neste tipo de janela de diálogo, o ícone é representado por um sinal de 
exclamação (advertência). 
b) Os demais parâmetros são os mesmos. 
 
3) Vamos agora a um exemplo do tipo QUESTION_MESSAGE: 
 
import javax.swing.JOptionPane; 
public class Grafico1 { 
 public static void main ( String args[] ) 
 { 
 JOptionPane.showMessageDialog (null, "Confirma Exclusao Registro?", "Projeto 
Aprenda em Casa", JOptionPane.QUESTION_MESSAGE); 
 System.exit(0); 
 } 
} 
 
Veja o resultado do código executado: 
 
 
 
 
Observe que nos demais modelos, o que realmente altera é o ícone que representa o tipo de caixa 
de diálogo. Vamos a um exemplo prático com o ERROR_MESSAGE: 
 
import javax.swing.JOptionPane; 
public class Grafico1 { 
 public static void main ( String args[] ) 
 { 
 
 
 JOptionPane.showMessageDialog (null, "Voce nao esta autorizado a acessar esta 
area do site", "Projeto Aprenda em Casa", JOptionPane.ERROR_MESSAGE); 
 System.exit(0); 
 } 
} 
 
Veja abaixo o resultado do código executado: 
 
 
 
 
 
 
 
 
 
Módulo de apostila : Java 
Número : 003 
Número de páginas : 
 
É expressamente proíba a reprodução total ou parcial do conteúdo desta apostila sem a prévia 
autorização da High Tec Informática, estando o infrator sujeito as penalidades previstas em Lei. Estemódulo publica nomes comerciais e marcas registradas de produtos pertencentes a diversas 
companhias, utilizando estas marcas somente para fins editoriais e em benefício dos proprietários das 
marcas, sem nenhuma intenção de atingir seus direitos. 
 
A High Tec Informática não comercializa a nenhum título softwares, sendo que os 
mesmos deverão ser adquiridos pelos alunos através dos distribuidores credenciados. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
No módulo de aula anterior. Você saberia definir o que é uma variável? E constantes, você saberia 
definir o que é uma constante? No mundo da programação de computadores, independente da 
linguagem a ser utilizada, sempre iremos nos deparar com constantes e variáveis. 
 
Constantes 
 
Como o próprio nome diz, constante é uma área de memória, que recebe um nome de 
identificação e que após declarada, não terá o seu valor alterado. O exemplo típico de uma 
constante seria utilizado para definir o índice de desconto máximo de um determinado produto. 
 
Como regra as constantes devem ser declaradas e inicializadas no mesmo momento. Veja 
um simples exemplo de declaração/inicialização de constantes abaixo: 
 
class Exemplo1 { 
 public static void main (String args[]) { 
 final int ndias = 365; 
 System.out.println ("Uma pessa de 15 anos ja viveu "+(15*ndias)+" dias"); 
 } 
} 
 
Ao executar o arquivo acima, teremos como resultado: 
 
 
 
Observe os passos que foram seguidos para declarar uma constante: 
 
Primeiro utilizamos a palavra chave FINAL (indicando que estamos declarando uma 
constante), em seguida o tipo de dado da constante (número inteiro), após o nome da 
constante (ndias) e por fim o valor desta constante. 
 
Sempre que o sistema encontrar NDIAS durante a interpretação do código irá ter como 
resultado o valor 365. 
 
Observe que citamos o tipo, ou seja, o tipo de dados que a constante irá 
representar/armazenar. No Java temos os seguintes tipos primitivos de dados: 
 
Tipo Espaço ocupado Valores possíveis 
char 2 bytes Armazena apenas um caracter, podendo este ser um 
caracter de controle. 
String variável Armazena Strings de caracter 
boolean 1 byte True ou False 
float 4 bytes 3,4E-38 a 3,4E+38 
 
 
double 8 bytes 1,7E-308 a 1,7E+308 
byte 1 byte -128 a 127 
short 2 bytes -32.768 a 32767 
int 4 bytes -2.147.483.648 a 2.147.383.647 
long 8 bytes -9.223.372.036.854.775.808 a 
9.223.372.036.854.775.807 
 
Lembrando que os tipos das variáveis devem ser escritos em letras minúsculas. 
 
Observe agora o exemplo abaixo: 
 
class Exemplo1 { 
 public static void main (String args[]) { 
 final float ndias = 365; 
 System.out.println ("Uma pessa de 15 anos ja viveu "+(15*ndias)+" dias"); 
 } 
} 
 
Observe que alteramos a constante (ndias) do tipo INT para FLOAT e, ao executar o programa 
teremos o seguinte resultado: 
 
 
 
Quando declaramos a constante como sendo um número do tipo ponto flutuante, ela assume 
automaticamente casas decimais. Sendo assim é muito importante definir uma constante 
como sendo do tipo adequado ao processamento que será realizado.Observe o outro 
exemplo abaixo: 
 
class Exemplo1 { 
 public static void main (String args[]) { 
 final byte ndias = 365; 
 System.out.println ("Uma pessa de 15 anos ja viveu "+(15*ndias)+" dias"); 
 } 
} 
 
Ao compilar o arquivo acima, teremos o seguinte erro: 
 
C:\Arquivos de programas\Xinox Software\JCreator LE\MyProjects\Exemplo1.java:3: 
Incompatible type for declaration. Explicit cast needed to convert int to byte. 
 final byte ndias = 365; 
 ^ 
 
 
1 error 
 
O erro se dá pelo motivo de que uma constante do tipo byte armazena valores na faixa de –
128 a 127 e, o valor atribuído supera estes limites. 
 
 
Variáveis 
 
Uma variável ao contrário de uma constante, poderá armazenar diversos valores durante a 
execução de um programa, ou seja,é um espaço reservado na memória do computador para 
armazenar um determinado tipo de dados. 
 
No Java a declaração de uma variável poderá ocorrer em qualquer ponto do programa, 
desde que antes de sua utilização. 
 
Uma variável pode ser declarada sem receber um valor inicial ou recebendo um valor 
inicial, de acordo com a necessidade do operador. 
 
As variáveis podem assumir o mesmo tipo de dados citados acima quando estudamos as 
constantes. 
 
Para formar o nome de uma variável deveremos observar as regras abaixo: 
 
a. Iniciar por uma letra do alfabeto; 
b. Os demais caracteres podem ser letras, números ou sublinhado. 
 
Estas regras também valem para os nomes de constantes. 
 
Ao declarar uma variável você deverá definir o tipo de dados, o nome da variável e se for o 
caso, o valor inicial da mesma. 
 
Observe o exemplo abaixo: 
 
class Exemplo1 { 
 public static void main (String args[]) { 
 int ndias = 365; 
 System.out.println ("Uma pessa de 15 anos ja viveu "+(15*ndias)+" dias"); 
 } 
} 
 
Na verdade temos o mesmo exemplo utilizado para ilustrar as constantes, porém com o uso de 
variáveis. 
 
Se você já conhece outra linguagem de programação, com certeza sabe o que é um vetor ou 
uma array. Este termo é utilizado para especificar um grupo de posições continuas e 
ordenadas na memória do micro (entenda por variáveis com divisões), que possuem o 
mesmo nome e o mesmo tipo e, cada um dos elementos é identificado por um número. 
 
 
 
Imagine uma casa, onde teoricamente pode residir uma família. Agora imagine um bloco 
(prédio residencial), aqui poderemos ter várias famílias residindo, sendo que cada uma 
ocupa uma determinada posição (apartamento), identificada por um determinado número 
(número do apartamento). Temos aqui um mesmo tipo de construção (mesmo nome de 
variável), com um mesmo objetivo, o de alocar famílias (mesmo tipo de dado), sendo que 
para cada família (cada valor a ser armazenado), teremos um espaço físico próprio (espaço 
de memória) e este espaço, será identificado por um número do apartamento (número de 
identificação do array/vetor). Ficou mais claro? 
 
Temos dois tipos de arrays: 
 
• Unidimensional -> aquele que possui um único índice de identificação. Neste caso é 
chamado de vetor; 
• Matriz -> aqueles que possuem mais de uma dimensão. 
 
Veja abaixo exemplos de vetores: 
 
Nome [0] 
Nome [1] 
Nome [2] 
 
Observe que temos uma mesma variável (NOME), porém como a mesma foi dividida, ela 
passou a ser um vetor, porque possui uma única dimensão de divisão. 
 
Veja abaixo exemplos de matrizes: 
 
Valorvenda [0] [0] 
Valorvenda [0] [1] 
Valorvenda [0] [2] 
Valorvenda [1] [0] 
Valorvenda [1] [1] 
.... 
.... 
 
Observe que dividimos a parte 0 do vetor Valorvenda em três outras partes, o mesmo 
ocorrendo para a parte 1, ou seja, temos aqui mais de uma dimensão (divisão). É importante 
lembrar que, em termos práticos, o primeiro elemento de um vetor ou matriz é o zero ( 0 ). 
 
Para que você utilize um array em seu sistema, deverá obedecer três etapas: 
 
 
 
1. Declaração; 
2. Inicialização; 
3. Instanciar. 
 
Veja alguns exemplos abaixo de declaração de um array: 
 
 
 
String nome[]; 
Float valorvenda [] []; 
 
Veja abaixo alguns exemplos para instanciar um array: 
 
String nome = new String[10]; 
Float valorvenda [3] [3]; 
 
Para lançar um valor a um array, basta proceder como nas variáveis, porém você deverá citar o 
número do índice que irá recebe-lo. 
 
Veja o exemplo abaixo, onde declaramos e em seguida instanciamos uma array: 
 
public class Programa4 { 
 public static void main (String args[]) 
 { 
 String nome[] = new String[3]; 
 nome[0] = "Paulo"; 
 nome[1] = "Henrique"; 
 nome[2] = "Matuszewski"; 
 System.out.println ("Seu sobre nome e " + nome[2]); 
} 
} 
 
Observe o resultado em tempo de execução: 
 
 
 
Vamos agora gerar um erro proposital, comopor exemplo, tentar utilizar um índice fora dos 
limites estipulados na declaração. Observe o erro que será gerado: 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Observe que o erro é gerado em tempo de execução e não em tempo de compilação. 
 
Veja outro exemplo com o uso de vetores abaixo: 
 
public class Programa4 { 
 public static void main (String args[]) 
 { 
 int numeros[] = new int[3]; 
 int soma; 
 numeros[0] = 32; 
 numeros[1] = 10; 
 numeros[2] = 54; 
 soma = (numeros[0]+numeros[1]+numeros[2]); 
 System.out.println("A soma dos numeros e :" + soma); 
} 
} 
 
Observe o resultado na execução deste programa: 
 
 
 
 
 
Observe outra forma de escrever o mesmo código acima: 
 
public class Programa4 { 
 public static void main (String args[]) 
 { 
 int numeros[]; 
 numeros = new int[3]; 
 int soma; 
 numeros[0] = 32; 
 numeros[1] = 10; 
 numeros[2] = 54; 
 soma = (numeros[0]+numeros[1]+numeros[2]); 
 System.out.println("A soma dos numeros e :" + soma); 
} 
} 
 
Você notou a diferença? No primeiro exemplo da fonte em teste executamos o seguinte 
procedimento: 
 
 int numeros[] = new int[3]; 
 
Neste declaramos e instanciamos o vetor em uma mesma linha, o que não ocorre no 
exemplo abaixo: 
 int numeros[]; 
 numeros = new int[3]; 
 
Assim como em outras linguagens de programação, no Java temos uma série de funções 
matemáticas. Como regra geral temos a seguinte sintaxe para o emprego das funções 
matemáticas em Java: 
 
Math.nome_função(argumento) 
 
Antes de gerarmos qualquer exemplo, vamos a uma listagem das principais funções 
matemáticas existentes no Java: 
 
Função Objetivo 
Math.abs Retorna o valor absoluto de um número 
Math.sqrt Retorna o valor da raiz quadrada de um número 
Math.round Retorna o número oferecido como parâmetro, arredondado 
para o seu inteiro seguinte 
Math.floor Arredonda o valor de um número para baixo 
Math.ceil Arredonda o valor de um número para cima 
Math.min(lista valores) Retorna o menor valor de um conjunto de números 
 
 
Math.max(lista valores) Retorna o maior valor de um conjunto de números 
(int)(Math.random()) Retorna um valor aleatório 
 
Vamos gerar um exemplo abaixo onde iremos simular o sorteio dos números de uma loteria 
qualquer, como por exemplo, a MegaSena: 
 
public class Programa6 { 
 public static void main (String args[]) 
 { 
 int sorteado; 
 int contador; 
 for (contador = 1; contador <=6; contador++) { 
 sorteado = (int)(Math.random()*60); 
 System.out.println ("Numero"+contador+"Sorteado "+sorteado); 
 } 
 } 
} 
 
Observe que a principio geramos um Loop, que será executado 6 vezes e, em cada uma das 
vezes que o loop for executado, será sorteado um número de 1 à 60, número este que será 
armazenado na variável “sorteado”. Em seguida, iremos enviar para a janela de Prompt do DOS a 
string na qual será apontado o número sorteado, conforme podemos observar na figura abaixo: 
 
 
 
Vamos a um outro exemplo: 
 
public class Programa6 { 
 public static void main (String args[]) 
 { 
 System.out.println("Funcao abs de 10.7 igual a "+Math.abs(10.7)); 
 System.out.println("Funcao abs de -10.7 igual a "+Math.abs(-10.7)); 
 System.out.println("Funcao floor de 10.7 igual a "+Math.floor(10.7)); 
 System.out.println("Funcao ceil de 10.7 igual a "+Math.ceil(10.7)); 
} 
} 
 
 
 
Aqui teremos como resultado o que segue: 
 
 
 
 
 
 
 
 
Módulo de apostila : Java 
Número : 004 
Número de páginas : 
 
É expressamente proíba a reprodução total ou parcial do conteúdo desta apostila sem a prévia 
autorização da High Tec Informática, estando o infrator sujeito as penalidades previstas em Lei. Este 
módulo publica nomes comerciais e marcas registradas de produtos pertencentes a diversas 
companhias, utilizando estas marcas somente para fins editoriais e em benefício dos proprietários das 
marcas, sem nenhuma intenção de atingir seus direitos. 
 
A High Tec Informática não comercializa a nenhum título softwares, sendo que os 
mesmos deverão ser adquiridos pelos alunos através dos distribuidores credenciados. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Vamos neste módulo de aula estudar sobre as estruturas de controle do Java. A principio 
um programa de computador emprega o modo de execução sequêncial para ler/executar os 
comandos, ou seja, as linhas de comando são executadas uma a uma, através de ordem 
crescente pela qual foram escritas. 
 
Este método pode ser alterado através do emprego das estruturas de controle, ou seja, o 
código poderá ter a sua execução sequêncial interrompida, até que uma determinada 
condição seja alcançada. Estes modos de execução de um programa são chamados de 
estruturas de controle, que podem ser dos seguintes tipos básicos: 
 
• Estrutura sequencial; 
• Estrutura de seleção; 
• Estrutura de repetição. 
 
A estrutura sequêncial foi citada no inicio deste módulo. Já para a estrutura de seleção, o 
Java disponibiliza três destas: 
 
1. If 
2. If/Else 
3. Switch 
 
Para a estrutura de repetição, o Java disponibiliza três destas: 
 
1. While 
2. Do ... While 
3. For 
 
Os comandos acima são considerados pela linguagem como “Palavras chave” e, estas não 
poderão ser empregadas para nomear uma variável por exemplo. As palavras chave do Java 
podem ser observadas na listagem abaixo: 
 
abstract boolean break byte case 
catch char class continue default 
do double else Extends false 
final finally float For if 
implements import instanceof int interface 
long native new null package 
private protected public return short 
static super switch synchronized this 
throw throws transient true try 
void volatile while const goto 
 
 
 
 
 
 
 
As estruturas de seleção são empregadas para determinar, através de uma condição 
especifica, se um trecho de código será ou não executado. Por exemplo, só será concedido o 
crédito a consumidores que tiverem um salário superior à R$ 2.000,00. Neste caso, teremos 
algo (dentro do código e em linguagem de programação) parecido com o que segue: 
 
Se salário_consumidor for maior ou igual a 2000,00 
 então conceda o crédito 
Final da condição. 
 
Este tipo de condição poderá ser empregada na linguagem Java através do emprego do 
comando IF (se). A sintaxe desta estrutura pode ser observada abaixo: 
 
if (condição){ 
 lista de comandos a serem executados em caso positivo 
} 
 
Veja um simples exemplo abaixo: 
 
public class aula12 { 
 public static void main (String args[]) 
 { 
 int salario; 
 salario = 2300; 
 if (salario >= 2000) { 
 System.out.println("Este consumidor podera adquirir o produto atraves de financiamento"); 
 } 
} 
} 
 
Ao executarmos este pequeno programa teremos o seguinte resultado: 
 
 
 
A linha de impressão só foi executada pois a comparação dentro da estrutura IF é 
verdadeira, ou seja, a variável “salario” possui um valor maior ou igual à R$ 2.000,00. 
 
Vamos alterar o valor do teste, conforme podemos observar abaixo: 
 
 
 
 
 
 
public class aula12 { 
 public static void main (String args[]) 
 { 
 int salario; 
 salario = 1999; 
 if (salario >= 2000) { 
 System.out.println("Este consumidor podera adquirir o produto atraves de financiamento"); 
 } 
} 
} 
 
 
 
 
Observe que a frase não foi impressa, pois o comando que realiza esta função só será 
executado caso a comparação seja verdadeira e, no exemplo acima o valor da variável 
“salario” é 1999 e o teste para ser verdadeiro deverá ter o valor da variável em questão 
igual ou superior a 2000. 
 
Poderemos empregar também a sintaxe deste comando através de uma estrutura aninhada, 
onde serão estadas múltiplas condições, onde serão impostas novas condições IFs para uma 
condição ELSE. Observe o exemplo abaixo: 
 
importjavax.swing.JOptionPane; 
public class Programa6 { 
 public static void main (String args[]) 
 { 
 String idade; 
 int vota; 
 idade=JOptionPane.showInputDialog("Qual a sua idade?"); 
 vota = Integer.parseInt( idade ); 
 if (vota < 16) { 
 JOptionPane.showMessageDialog(null,"Você não poderá votar nas 
próximas eleicoes","Atencao",JOptionPane.INFORMATION_MESSAGE); 
 } else if (vota>15 && vota<18) { 
 JOptionPane.showMessageDialog(null,"O seu voto nas proximas eleicoes e 
opcional","Atencao",JOptionPane.INFORMATION_MESSAGE); 
 } else { 
 JOptionPane.showMessageDialog(null,"O seu voto e obrigatorio nas 
proximas eleicoes","Atencao",JOptionPane.INFORMATION_MESSAGE); 
 } 
 } 
} 
 
 
 
Observe que no exemplo acima temos na verdade um outro IF no caso do primeiro teste 
realizado ser falso, iremos testar outra condição (não uma negativa). Ou seja, empregando a 
técnica acima você estará oferecendo três alternativas ao seu sistema: 
 
• A primeira caso a idade entrada seja inferior a 16 anos; 
• A segunda caso a idade entrada seja superior a 15 e inferior a 18; 
• A terceira caso a idade entrada seja superior a 18. 
 
Observe que utilizamos o operador lógico && (and), ou seja, para que se tenha como 
resultado uma resposta verdadeira, as duas expressões constantes da expressão lógica 
devem ser verdadeiras. 
 
Observe que no exemplo acima, tivemos um processo de múltipla escolha e, dependendo 
do número de opções a serem especificadas na estrutura IF pode tornar a escrita do 
comando inviável. Se você necessitar escolher um entre diversos outros valores, sendo que 
para cada valor temos um código específico, poderá empregar a estrutura SWITCH ... 
CASE. A sintaxe deste comando é observada abaixo: 
 
switch (expressão) { 
 case valor1: lista de comandos a serem executados; 
 break; 
 case valor2: lista de comandos a serem executados; 
 break; 
 case valor3: lista de comandos a serem executados; 
 break; 
 case valor4: lista de comandos a serem executados; 
 break; 
} 
 
Observe o exemplo abaixo: 
 
import java.util.Date; 
public class Programa6 { 
 public static void main (String args[]) 
 { 
 int dia; 
 Date dt_atual = new Date(); 
 dia = dt_atual.getMonth(); 
 switch(dia) { 
 case 0: System.out.println("estamos no mes de janeiro"); 
 break; 
 case 1: System.out.println("estamos no mes de fevereiro"); 
 break; 
 case 2: System.out.println("estamos no mes de marco"); 
 break; 
 case 3: System.out.println("estamos no mes de abril"); 
 
 
 break; 
 case 4: System.out.println("estamos no mes de maio"); 
 break; 
 case 5: System.out.println("estamos no mes de junho"); 
 break; 
 case 6: System.out.println("estamos no mes de julho"); 
 break; 
 case 7: System.out.println("estamos no mes de agosto"); 
 break; 
 case 8: System.out.println("estamos no mes de setembro"); 
 break; 
 case 9: System.out.println("estamos no mes de outubro"); 
 break; 
 case 10: System.out.println("estamos no mes de novembro"); 
 break; 
 case 11: System.out.println("estamos no mes de dezembro"); 
 break; 
 } 
 } 
} 
 
Observe que no exemplo acima temos um total de 12 condições (valores diferentes) para 
uma mesma variável e, o objetivo é de apenas exibir a mês atual por extenso. 
 
Aqui temos algumas novidades, entre elas a importação do pacote java.util.Date, para que 
possamos extrair a data atual e a função getMonth(), onde podemos extrair o mês da data 
atual. 
 
Se você precisar extrair o dia da semana ao invés do número do mês, deverá trocar a função 
getMonth() pela função getDay(). 
 
Observe que a numeração do mês, assim como a numeração do dia da semana, sempre 
começa do zero (0), assim sendo, o mês de agosto nesta função é representado pelo número 
07. 
 
Vamos começar nossos estudos das estruturas de repetição: 
 
 
ESTRUTURA DE REPETIÇÃO WHILE 
 
Esta estrutura tem como lógica fundamental o “execute enquanto uma determinada 
condição for verdadeira”. Sua sintaxe pode ser observada abaixo: 
 
while (condição) { 
 lista de comandos a serem executados enquanto condição do while for 
 verdadeira 
 } 
 
 
 
 
Observe o exemplo abaixo: 
 
public class Programa5 { 
 public static void main (String args[]) 
 { 
 int contador = 1; 
 int soma = 0; 
 while (contador<11) { 
 soma=soma+contador; 
 System.out.println("Valor : "+contador); 
 contador=contador+1; 
 } 
 System.out.println("------------"); 
 System.out.println("Soma dos valores = " + soma); 
} 
} 
 
O primeiro passo foi declarar duas variáveis como numéricas e inteiras (contador e soma), 
sendo que a primeira tem valor inicial igual a 1 e a segunda igual a 0. 
 
Em seguida criamos um laço (sequência de comandos que será executada um determinado 
número de vezes), sendo que a condição deste laço é executar enquanto o valor de contador 
for menor que 11. 
 
O bloco que será executado enquanto o contador for menor que 11 diz que, primeiro iremos 
acumular o valor de contador na variável soma. Em seguida iremos enviar para o vídeo o 
valor da variável contador antecedido da frase “Valor :” e em seguida iremos incrementar a 
variável contador em uma unidade. De um em um, chegará um momento que a variável 
contador não será mais menor que 11 e, neste caso, o laço será quebrado (abandonado) e a 
sequência de execução passa a valer a partir da próxima linha ao final do laço, ou seja, 
aquela na qual solicitamos que seja enviado para o vídeo uma série de caracteres de 
subtração (string) e em seguida o valor da variável soma. 
 
Veja o resultado deste programa em tempo de execução: 
 
 
 
 
 
Agora vamos provocar um erro proposital em nosso sistema, retirando a linha que efetua o 
incremento (soma de uma unidade a mais) para a variável contador. Teremos então: 
 
public class Programa5 { 
 public static void main (String args[]) 
 { 
 int contador = 1; 
 int soma = 0; 
 while (contador<11) { 
 soma=soma+contador; 
 System.out.println("Valor : "+contador); 
 } 
 System.out.println("------------"); 
 System.out.println("Soma dos valores = " + soma); 
} 
} 
 
Observe o resultado em tempo de execução: 
 
 
 
 
 
Teremos aqui um loop eterno. Observe que a condição para a execução do laço é ... faça 
enquanto contador for menor que 11 ... A variável contador é iniciada com valor 1 (valor 
menor que 11) e, dentro do laço não temos nenhum incremento em seu valor, ou seja, ela 
sempre terá o valor 1, valor este que permite a execução do laço. 
 
Para interromper a execução do programa, basta pressionar as teclas <CTRL>+<C> 
simultâneamente. 
 
Cuidado para não cometer este tipo de erro quando for construir um laço, ou seja, a de criar 
um laço eterno. 
 
Observe outra forma de escrever o incremento do valor da variável contador: 
 
public class Programa5 { 
 public static void main (String args[]) 
 { 
 int contador = 1; 
 int soma = 0; 
 while (contador<11) { 
 soma=soma+contador; 
 System.out.println("Valor : "+contador); 
 contador++; 
 } 
 System.out.println("------------"); 
 System.out.println("Soma dos valores = " + soma); 
} 
} 
 
 
Veja outra modificação no código acima: 
 
public class Programa5 { 
 public static void main (String args[]) 
 { 
 int contador = 1; 
 int soma = 0; 
 while (contador>11) { 
 soma=soma+contador; 
 System.out.println("Valor : "+contador); 
 contador++; 
 } 
 System.out.println("------------"); 
 System.out.println("Soma dos valores = " + soma); 
} 
} 
 
 
 
 
 
 
Observe que no exemplo acima, o laço não foi executado nenhuma vez. Motivo: A variável 
contador tem valor inicial igual a zero (0). A condição para a execução do laço é executar 
enquanto o valor da variável contador for maior que onze (11). Isso será impossível, devido 
ao valor inicialda variável ao entrar na condição do laço. 
 
Com o que foi exposto acima, podemos concluir que o laço da estrutura While poderá 
nunca ser executado, dependendo das circunstâncias, pois o teste é executado antes do 
inicio da execução da estrutura. 
 
ESTRUTURA DE REPETIÇÃO DO...WHILE 
 
Ao contrário do WHILE, nesta estrutura o laço sempre será executado pelo menos uma vez, 
pois o teste condicional para a execução dos comandos que fazem parte do loop se dá ao 
final da estrutura, conforme podemos observar a seguir: 
 
public class Programa5 { 
 public static void main (String args[]) 
 { 
 int contador = 1; 
 int soma = 0; 
 do { 
 soma=soma+contador; 
 System.out.println("Valor : "+contador); 
 contador=contador+1; 
 } while (contador<11); 
 System.out.println("------------"); 
 System.out.println("Soma dos valores = " + soma); 
} 
} 
 
 
 
 
 
Observe que o resultado final é o mesmo, porém vamos alterar o Script para a condição 
abaixo: 
 
public class Programa5 { 
 public static void main (String args[]) 
 { 
 int contador = 1; 
 int soma = 0; 
 do { 
 soma=soma+contador; 
 System.out.println("Valor : "+contador); 
 contador=contador+1; 
 } while (contador>11); 
 System.out.println("------------"); 
 System.out.println("Soma dos valores = " + soma); 
} 
} 
 
Veja o resultado na execução: 
 
 
 
Observe que pelo fato do teste condicional do laço ser executado ao final da estrutura em si, 
pelo menor uma vez a mesma será executada e, foi o que ocorreu no caso. Portanto 
empregue esta estrutura quando quiser que o laço seja executado pelo menos uma vez, 
independente da condição geral imposta pelo sistema. 
 
 
 
 
Módulo de apostila : Java 
Número : 005 
Número de páginas : 
 
É expressamente proíba a reprodução total ou parcial do conteúdo desta apostila sem a prévia 
autorização da High Tec Informática, estando o infrator sujeito as penalidades previstas em Lei. Este 
módulo publica nomes comerciais e marcas registradas de produtos pertencentes a diversas 
companhias, utilizando estas marcas somente para fins editoriais e em benefício dos proprietários das 
marcas, sem nenhuma intenção de atingir seus direitos. 
 
A High Tec Informática não comercializa a nenhum título softwares, sendo que os 
mesmos deverão ser adquiridos pelos alunos através dos distribuidores credenciados. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Neste módulo vamos dar inicio ao estudo dos Appets Java. Até o momento, os exemplos 
que desenvolvemos eram executados e tinham as suas saídas direcionadas ao Prompt de 
comando ou pela Interface gráfica do Java, sendo que o Applet é executado no 
APPLETVIWER ou também através de um navegador Web. O Java quando instalado, 
oferece uma série de applets exemplos. Os exemplos normalmente são instalados no 
guinte diretório: 
 
se
 
 
Cada um dos Java Applets de exemplo vem acompanhado de suas respectivas fontes e, a 
medida que o seu conhecimento da linguagem Java for ampliando, você terá nestas fontes 
ma ótima fonte de pesquisa: 
 
u
 
 
 
 
Para executar um Applet, você deverá proceder da seguinte forma: 
 
1) Abra o Prompt de comando; 
2) Acesse a pasta que contém o Applet a ser executado; 
3) Digite o seguinte comando: appletviewer nome_arquivo.html: 
 
 
 
 
 
 
 
Este procedimento fará com que o appletviewer carregue o arquivo HTML especificado na 
linha de comando citada. Observe este applet em execução: 
 
 
 
Agora que você sabe o que é um applet, iremos no próximo módulo de aula estudar os 
passos necessários para criar um applet. 
 
 
Módulo de apostila : Java 
Número : 006 
Número de páginas : 
 
É expressamente proíba a reprodução total ou parcial do conteúdo desta apostila sem a prévia 
autorização da High Tec Informática, estando o infrator sujeito as penalidades previstas em Lei. Este 
módulo publica nomes comerciais e marcas registradas de produtos pertencentes a diversas 
companhias, utilizando estas marcas somente para fins editoriais e em benefício dos proprietários das 
marcas, sem nenhuma intenção de atingir seus direitos. 
 
A High Tec Informática não comercializa a nenhum título softwares, sendo que os 
mesmos deverão ser adquiridos pelos alunos através dos distribuidores credenciados. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Vamos gerar nosso primeiro Applet para conhecer os passos necessários à sua criação. 
Observe a fonte abaixo: 
 
 
 
A principio (linhas 1 e 2) importamos as classes que serão necessárias para a execução do 
Applet que acabamos de gerar. A classe importada de fundamental importância neste 
xemplo é a JApplet do pacote swing. 
pplet). Quando 
tilizamos esta sintaxe estamos na verdade utilizando dois tipos de classes: 
 
• A classe derivada -> que irá herdar características da classe principal. 
as 
aracterísticas, sendo muito mais simples apenas fazer herdar as mesmas na nova classe. 
oid informa que este método não irá retornar nenhum 
sultado ao completar a sua tarefa. 
e de G. Este objeto é utilizado para possibilitar o desenho de 
agens gráficas no Applet. 
e
 
Assim como nos exemplo anteriores, cada applet java a ser gerado é composto de uma 
definição de classe no mínimo e, na linha 3 do exemplo acima, estamos iniciando uma nova 
classe, chamada de Exemploapplet. O parâmetro extends JApplet informa à classe que 
iremos herdar características semelhantes a esta classe (uma classe a
u
• A super classe -> classe principal da estrutura (JApplet); 
 
Em outras palavras, podemos afirmar que a nova classe (Exemploapplet) que herda dados e 
métodos da superclasse somados aos novos recursos que serão especificados abaixo. Mas 
herdar o que da classe principal (super classe)? Os navegadores que irão exibir o Applet 
necessitam de características especiais para que possam “rodar” o applet e, são essas 
características que serão herdadas. Seria muito trabalhoso você programar todas as est
c
 
 
Entre a linha 5 e a linha 7 temos o corpo de definição da classe e das linhas 4 a 8 temos a 
definição de Paint, que é na verdade um método com o objetivo de desenhar imagens 
gráficas na tela e, a palavra-chave v
re
 
Os parâmetros do método PAINT são informados entre parênteses na mesma linha (número 
04). Os parâmetros passados informam que o método Paint irá requerer o objeto da classe 
Graphics que receberá o nom
im
 
 
 
Observe também na mesma linha que utilizamos a palavra-chave public para que o 
ppletviewer passa chamar o método Paint. 
ploapplet.class. A 
nte do arquivo HTML que tem esta função pode ser observada abaixo: 
e=”Exemploapplet.class” width=400 height=50> 
 
/html> 
na 
esma pasta onde o applet foi gerado. Após este procedimento basta digitar o comando: 
ppletviewer Exemploapplet.htm 
No próximo módulo de aula iremos gerar outros applets de exemplo. 
a
 
Agora teremos que gerar o arquivo HTML que irá carregar a classe Exem
fo
 
<html> 
<applet cod
</applet>
<
 
Este arquivo deverá ser salvo com o nome Exemploapplet.htm e, deverá estar presente 
m
 
a
 
 
 
 
 
Módulo de apostila : Java 
Número : 007 
Número de páginas : 
 
É expressamente proíba a reprodução total ou parcial do conteúdo desta apostila sem a prévia 
autorização da High Tec Informática, estando o infrator sujeito as penalidades previstas em Lei. Este 
módulo publica nomes comerciais e marcas registradas de produtos pertencentes a diversas 
companhias, utilizando estas marcas somente para fins editoriais e em benefício dos proprietários das 
marcas, sem nenhuma intenção de atingir seus direitos. 
 
A High Tec Informática não comercializa a nenhum título softwares, sendo que os 
mesmos deverão ser adquiridos pelos alunos atravésdos distribuidores credenciados. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Antes de gerarmos novos exemplos de Java applets, vamos a algumas dicas sobre alguns 
erros comuns quando se começa a desenvolver em Java neste sentido: 
 
1. Nunca esqueça de finalizar a tag <APPLET> com </APPLET>. Quando 
trabalhamos apenas com o HTML puro, a página pode ser normalmente exibida se 
esquecermos de finalizar determinadas Tags, ou seja, algum conteúdo, mesmo que 
fora do esperado/planejado, dados serão exibidos no navegador. Ao esquecer da tag 
de encerramento </APPLET>, impossibilita que o Applet seja carregado no 
Appletviewer ou em seu navegador Web. 
2. Caso ao executar o seu applet tenha recebido a seguinte mensagem de erro: 
MissingResourceException, esta mensagem pode estar vinculada a um dos erros 
de procedimento a seguir: 
a. Verifique a Tag <APPLET>, ela deve conter a mesma sintaxe apresentada 
no Script anterior, caso contrário o erro será gerado; 
b. Verifique se, por erro de digitação foram inclusos na tag <APPLET> 
caracteres especiais como pontos ou virgulas. 
3. O appletviewer requer sempre um arquivo HTML, com a tag <APPLET> para 
carregar um applet. 
4. O arquivo a ser executado pelo Appletviewer deverá ser sempre um arquivo com a 
extensão HTML ou HTML. 
5. Os arquivos resultantes de todos os procedimentos seguidos (CLASS, HTML, etc...) 
deverão estar localizados em um mesmo diretório. 
 
Consideramos importante também a título de fonte de pesquisa e estudos, alguns sites que 
tratam sobre Java Applets. Entre vários destacamos: 
 
• www.java.sun.com/applets/index.html 
o Site da Sun contendo applets gratuitos para a imediata utilização em sites da 
Web, applets de exemplo para a plataforma J2SDK. 
• www.java.sun.com/jdc/ 
o Aqui você encontrará listas de discussão, fóruns, tutoriais, cursos on-line, 
etc... 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Vamos gerar outro exemplo de Java Applet, onde iremos gerar linhas e strings em uma 
janela de diálogo. Observe o exemplo abaixo: 
 
 
 
• Na linha 01 estamos importando a classe JApplet; 
• Na linha 02 estamos importante a classe Graphics; 
• Nas linhas 03 e 04 estamos definindo as classes e, o método paint tem seu inicio; 
• Neste ambiente gráfico, temos as coordenadas de x,y sabendo que: 
o Coordenada x representa a posição horizontal; 
o Coordenada y representa a posição vertical do objeto a ser desenhado. 
• Na linha 6 estamos solicitando o desenho de uma linha reta, que vá da coluna 10 
linha 20 até a coluna 200 linha 20. (linha reta e horizontal); 
• Na linha 7 estamos solicitando o desenho da String (“Projeto Aprenda em Casa”), 
na coluna 10 linha 30; 
• Na linha 8 estamos solicitando o desenho de outra linha reta, que vá da coluna 10 
linha 40 até a coluna 200 linha 40. 
 
Sugerimos a visita aos sites citados para melhor compreender o desenvolvimento de 
JavaApplets. 
 
 
 
 
Módulo de apostila : Java 
Número : 008 
Número de páginas : 
 
É expressamente proíba a reprodução total ou parcial do conteúdo desta apostila sem a prévia 
autorização da High Tec Informática, estando o infrator sujeito as penalidades previstas em Lei. Este 
módulo publica nomes comerciais e marcas registradas de produtos pertencentes a diversas 
companhias, utilizando estas marcas somente para fins editoriais e em benefício dos proprietários das 
marcas, sem nenhuma intenção de atingir seus direitos. 
 
A High Tec Informática não comercializa a nenhum título softwares, sendo que os 
mesmos deverão ser adquiridos pelos alunos através dos distribuidores credenciados. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Antes de começarmos a estudar o desenvolvimento de aplicativos Java com acesso a banco 
ara armazenar os dados em um computador, normalmente são empregados os Softwares 
emos em nosso site um curso completo de Access 2000 (sugerimos que o aluno baixe e 
bserve abaixo a cópia de uma tela do Access com o exemplo de uma tabela: 
de dados, deveremos conhecer um pouco sobre banco de dados, SQL, ODBC, etc... Sem 
um mínimo conhecimento a respeito destes assuntos, não teremos como prosseguir em 
nosso curso. 
 
P
conhecidos por SGBDs (Sistemas Gerenciadores de Banco de Dados), ou seja, programas 
que administram os dados que deverão ser armazenados eletronicamente. 
 
T
estude o curso citado). Conforme podemos observar neste curso, o banco de dados é 
formado por uma série de objetos e, o objeto responsável pelo armazenamento dos dados é 
a tabela. Um banco de dados é formado por uma ou mais tabelas (normalmente muitas 
tabelas). As tabelas são divididas em assuntos, ou seja, teremos uma tabela para cadastrar 
os clientes, outra para cadastrar as contas a pagar e receber, outra para cadastrar os 
fornecedores e assim sucessivamente. Cada tabela possui uma formação básica constituída 
de linhas e colunas. As colunas são campos que identificam uma determinada informação 
que a tabela irá armazenar, como por exemplo o nome do cliente (campo NOME), o CPF 
do cliente (campo CPF), o número da carteira de identidade do cliente (campo RG), e assim 
sucessivamente. Já as linhas (conhecidas em sistemas mais antigos por registros) são 
formadas por um conjunto de colunas (campos) devidamente preenchidos, ou seja, ao 
cadastrar um cliente (dar um nome, um CPF, um RG, etc...), estamos gerando uma linha na 
tabela (registro). 
 
O
 
 
 
cima temos uma tabela que possui 6 registros (linhas) e, cada linha é formada pelo 
baixo temos a figura da visualização da estrutura da tabela: 
A
conjunto de campos CODIGO (que armazena um suposto código de aluno) e ALUNO (que 
armazena o nome do aluno). 
 
A
 
 
 
 
 
 
 
s tabelas por sua vez possuem um nome que identificam a mesma e, neste caso temos a 
este módulo de aula não vamos detalhar a forma de criar tabelas no Access, maiores 
pós criar o banco de dados, você deverá criar o que chamamos de front-ends, que são 
ocê já ouviu falar em SQL? Provavelmente sim, porém aqui vamos apresentar alguns 
xistem diversas formas de emprego dos comandos que compõe a linguagem SQL, dentre 
• EMBUTIDA -> Quando o SQL é invocado dentro de uma linguagem; 
mentas que 
 
s comandos mais comuns do SQL são: 
• SELECT -> para selecionar um conjunto de dados; 
s; 
a tabela; 
 
ferecemos um curso gratuito de SQL Server 7 em nosso site e, em determinados pontos 
A
tabela “ALUNO”. Observe o nome da tabela na barra de título da janela. 
 
N
detalhes no curso disponível em nosso site com o título de “Access 2000” ou “Access XP”. 
 
A
programas que, através de sua interface, permitem manipular as informações das tabelas de 
um ou mais banco de dados (incluir novos dados, alterar dados cadastrados, etc...). No 
nosso curso iremos utilizar o Java e o SQL para gerar os Front-ends. 
 
V
detalhes principais sobre o assunto. O SQL é uma linguagem de consulta. Sua sigla 
significa Structured Query Language. Esta linguagem é empregada para possibilitar a 
comunicação de um programa e o banco de dados manipulado pelo mesmo. 
 
E
elas destacamos: 
 
• RAD -> geradores de aplicações, que nada mais são do que ferra
proporcionam gerar de forma automática rotinas e/ou aplicações, gerando 
automaticamente o código para o programa e acesso aos dados. 
O
 
• CREATE TABLE -> para criar a estrutura das tabela
• INSERT -> para inserir dados em tabelas; 
• UPDATE -> para atualizar os dados de um
• DELETE -> para excluir os dados de uma tabela; 
• DROP TABLE -> para excluir uma tabela. 
O
são vistos comandos da linguagem SQL. Aconselhamos o estudo do mesmo, caso você não 
tenha experiência com esta linguagem. 
 
 
 
 
 
 
 
Para que possamos interagir o banco de dados e o seu programa (front-end),

Outros materiais