Conceitos Básicos da Linguagem
Java
Prof. Leonardo Barreto Campos 1
Sumário
Introdução;
Histórico do Java;
Características do Java;
Compilação de um Programa em Java;
Modificando o Primeiro Programa em Java;
Declaração e Leitura de Variáveis;
Estruturas de Seleção;
if;
switch;
Prof. Leonardo Barreto Campos 2/38
Sumário
Estruturas de Repetição;
while;
do...while
for;
Os comandos break e continue;
Array;
Métodos;
Bibliografia.
Prof. Leonardo Barreto Campos 3/38
Histórico do Java
A Sun Microsystems, em 1991, percebeu que os
microprocessadores iriam modificar profundamente a
vida das pessoas;
Dessa forma, financiou um projeto de pesquisa
(codinome Green) que resultou na linguagem de
programação baseada no C++ que seu criador, James
Gosling, chamou de Oak;
Mais tarde descobriu-se que já existia uma linguagem
de programação chamada Oak;
Prof. Leonardo Barreto Campos 4/38
Histórico do Java
Quando uma equipe da Sun visitou uma cafeteira local, o nome
Java (cidade de origem de um tipo de café importado) foi
sugerido; e o nome pegou;
O projeto Green previa o avanço dos dispositivos eletrônicos
inteligentes mas no início dos anos 90 isso não ocorreu;
Felizmente, a World Wide Web explodiu em popularidade em
1993 e a equipe da Sun viu o imediato potencial de utilizar Java
para:
Adicionar conteúdo dinâmico;
Interatividade;
Animações às páginas Web...
Prof. Leonardo Barreto Campos 5/38
Histórico do Java
A Sun anunciou o Java formalmente em uma
importante conferência em maio de 1995;
O Java logo chamou atenção da comunidade de
negócios por causa do enorme interesse na WWW;
Hoje o Java é utilizado para:
Desenvolver aplicativos corporativos de grande porte;
Aprimorar a funcionalidade de servidores Web;
Fornecer aplicativos para dispositivos voltados para o consumo
popular (celulares, PDAs, etc);
Prof. Leonardo Barreto Campos 6/38
Características da Linguagem Java
Compilada:
Um programa em Java é compilado para o chamado
“bytecode”, que é próximo as instruções de máquina. O
bytecode é um código de uma máquina virtual idealizada pelos
criadores da linguagem;
Portável:
Java foi criada para ser portável. O “bytecode” gerado pelo
compilador para a sua aplicação específica pode ser
transportado entre plataformas distintas que suportam Java;
Prof. Leonardo Barreto Campos 7/38
Características da Linguagem Java
Orientada a Objetos:
Java suporta herança, mas não herança múltipla compensada
pelo uso de interfaces;
Segurança:
Presença de coleta automática de lixo, que evita erros comuns
ao acessar diretamente a memória.
Presença de mecanismos de tratamento de exceções que
torna as aplicações mais robustas, não permitindo que elas
abortem, mesmo quando rodando sob condições anormais;
Prof. Leonardo Barreto Campos 8/38
Características da Linguagem Java
Concorrência:
Permite, de maneira fácil, a criação de vários “threads” de
execução;
Eficiente:
Exige pouco espaço, pouca memória comparando-se com outras
linguagens de scripting existentes;
Ao passo que é 20 vezes mais lenta que C (caindo
gradativamente a cada ano);
Suporte para Programação de Sistemas Distribuídos:
Java fornece facilidade para programação com sockets,
chamada remota de procedimentos, tcp-ip, etc;
Prof. Leonardo Barreto Campos 9/38
Compilação de um Programa em Java
Fase 1: Consiste em editar um arquivo com um
programa ou ambiente de desenvolvimento integrado
(Integrated Development Environments – IDE)
Fase 2: Compilação do progra-
ma. O compilador converte o
código-fonte Java em
bytecodes
Fase 3: O programa é
carregado na memória para
ser executado posteriormen-
te;
Prof. Leonardo Barreto Campos 10/38
Compilação de um Programa em Java
Fase 4: Verificação do bytecode. O verificador de
bytecode examina seus bytecodes para assegurara
que eles são válidos e que não violam restrições de
segurança do Java;
Fase 5: Execução. A máquina
virtual do Java executa os
bytecodes do programa.
Combinação de interpretação
e a chamada compilação just-
in-time(JIT);
Prof. Leonardo Barreto Campos 11/38
Primeiro Programa em Java
Analisemos, agora, um simples programa em Java:
Nome do programa.
Comentário de multiplas
Obrigatoriamente
linhas /* comentário */
deverá ter uma classe
gerado pela ferramenta
do tipo public com o
NetBeans para auxiliar a
mesmo nome no arquivo.
documentação do arquivo.
Pacote. Usado para ajudar os
Declaração de classe programadores a gerenciar
definida pelo os códigos e facilitar a
programador. reutilização de software.
Prof. Leonardo Barreto Campos 12/38
Primeiro Programa em Java
Analisemos, agora, um simples programa em Java:
Construtor do objeto.
Utilizado para iniciar o
objeto da classe Main
quando ele for criado.
Ponto de partida de
cada aplicativo Java. Instrução para impressão de
Os parênteses indicam string (contida entre aspas
que a linha define um duplas) na janela de comando
método. Em Java, um na qual o aplicativo Java é
dos métodos deve ter executado.
o nome main.
Prof. Leonardo Barreto Campos 13/38
Primeiro Programa em Java
Considerações:
O nome de uma classe Java é um identificador – uma série de
letras, dígitos, sublinhados ( _ ) e sinais de cifrão ($) que não
iniciem com um dígito e não contenham espaços;
Por convenção, todos os nomes de classes em Java iniciam com
uma letra maiúscula e apresentam a letra inicial de cada
palavra que eles incluem em maiúsculo (ex: ImprimeNome);
Java faz distinção entre letras maiúsculas e minúsculas, assim
a1 e A1 são identificadores diferentes;
Caso o arquivo .java não contenha um método chamado main a
JVM não executará o aplicativo;
A chave esquerda, {, inicia um bloco. A chave direita, },
finaliza um bloco;
Prof. Leonardo Barreto Campos 14/38
Modificando o Primeiro Programa em
Java
Utilitário da O Comando print apenas
ferramenta que imprime a string. Por outro
suprime o código em lado o comando println
cada bloco. posiciona o cursor de saída
no começo da próxima linha
Novo recurso do
J2SE 5.0 que exibe
dados formatados.
Prof. Leonardo Barreto Campos 15/38
Modificando o Primeiro Programa em
Java
Saída no console para o programa anterior:
Prof. Leonardo Barreto Campos 16/38
Modificando o Primeiro Programa em
Java
Quando aparece uma barra invertida em uma string de
caracteres, o Java combina o próximo caractere com
as barras invertidas para formas uma seqüência de
scape:
Sequência
Descrição
de Scape
\n Nova linha
\r Retorno de carro
\t Tabulação horizontal
\” Aspas duplas
\\ Barra invertida
Prof. Leonardo Barreto Campos 17/38
Declaração e Leitura de Variáveis
Declaração da variável
entrada do tipo Scanner.
Em java, a criação do objeto
entrada do tipo Scanner
inicializada com o objeto de
entrada padrão System.in.
Utiliza o método nextInt
do valor de entrada do
objeto Scanner para
obter um inteiro digitado
pelo usuário.
Prof. Leonardo Barreto Campos 18/38
Declaração e Leitura de Variáveis
Saída no console para o programa anterior:
Prof. Leonardo Barreto Campos 19/38
Declaração e Leitura de Variáveis
Os tipos de dados primitivos da linguagem Java são:
Tipo de Dados Tamanho em bits Considerações
double 64
float 32
long 64 -263 a +263-1
int 32 -231 a +231-1
short 16 -32768 a +32767
byte 8 -128 a +127
‘\u0000’ a ‘\uFFFF’ (0 a
char 16
65535)
false ou true a depender da
bool
JVM em cada plataforma
Prof. Leonardo Barreto Campos 20/38
Estruturas de Seleção – if
Uma condição é uma expressão que pode ser
verdadeira ou falsa;
As condições nas instruções if pode, ser formadas
utilizando os operadores de igualdade (== e !=) e os
operadores relacionais (<, >, <= e >=);
Vejamos um exemplo de sua utilização:
Prof. Leonardo Barreto Campos 21/38
Estruturas de Seleção – if
Pacote javax.swing que contém
inúmeras classes e métodos
destinadas a interface.
Exibe uma caixa de diálogo que
contenha uma mensagem.
Prof. Leonardo Barreto Campos 22/38
Estruturas de Seleção – if
Exibe um diálogo de entrada que
permite ao usuário inserir dados.
Método parseInt utilizado para
converter a String em um int.
Prof. Leonardo Barreto Campos 23/38
Estruturas de Seleção – if
Saída para o programa anterior:
Prof. Leonardo Barreto Campos 24/38
Estruturas de Seleção – if
Considerações:
O Pacote javax.swing contém inúmeras classes que ajudam
os programadores em Java a criar interfaces gráficas com
usuário (graphical user interfaces – GUIs) para aplicações;
showMessageDialog é um método especial da classe
JOptionPane chamado método static. Dessa forma, não
exige a criação de um objeto;
O método format retorna uma String formatada, mas não
exibe na tela;
Prof. Leonardo Barreto Campos 25/38
Estruturas de Seleção – switch
O método nextLine lê caracteres até
que um caractere de nova linha seja
encontrado (Enter).
Prof. Leonardo Barreto Campos 26/38
Estruturas de Seleção – switch
Saída para o programa anterior:
Prof. Leonardo Barreto Campos 27/38
Estrutura de Repetição - While
Operador Ternário
Prof. Leonardo Barreto Campos 28/38
Estrutura de Repetição – do...while
Prof. Leonardo Barreto Campos 29/38
Estrutura de Repetição – for
Método static
chamado
especificando apenas
o nome da classe
Prof. Leonardo Barreto Campos 30/38
Estrutura de Repetição – for
Saída para o programa anterior:
Prof. Leonardo Barreto Campos 31/38
Os comandos break e continue
A instrução break pára a execução de um bloco,
vejamos:
Prof. Leonardo Barreto Campos 32/38
Os comandos break e continue
Por outro lado, o comando continue pula as instruções
restantes de um bloco para executar o próximo loop;
Prof. Leonardo Barreto Campos 33/38
Array
Um array é um grupo de variáveis (elementos ou
componentes) que contém valores que são todos do
mesmo tipo;
Declaração do array
Criação do objeto
Prof. Leonardo Barreto Campos 34/38
Array
Outras formas de declarar e inicializar um Array:
Método que retorna o
tamanho do array
Prof. Leonardo Barreto Campos 35/38
Array
A saída para o programa anterior:
Prof. Leonardo Barreto Campos 36/38
Métodos
Há três tipos de módulos e m Java – métodos, classes
e pacotes; (Próxima Aula)
Os métodos, mais conhecidos como funções ou
procedimentos em outras linguagens de programação,
permitem a modularização do código;
Há vários motivos para modularizar um código, os
principais são:
Dividir para conquistar;
Reutilização;
Prof. Leonardo Barreto Campos 37/38
Bibliografia
Deitel, H. M. & Deitel, P. J. Java: como programar,
Editora Bookman. 6ª ed. São Paulo: 2005.
Prof. Leonardo Barreto Campos 38/38