Buscar

Introdução à Linguagem Java

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 24 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 24 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 24 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

Fernando Albuquerque - fernando@cic.unb.br
Linguagem Java
Fernando Albuquerque
061-2733589
fernando@cic.unb.br
Fernando Albuquerque - fernando@cic.unb.br
Java - Tópicos
n Arquitetura
n Orientação a objetos
n Classes e Objetos
n Hierarquias
n Interfaces
n Símbolos
n Operadores
n Controle de fluxo
n Eventos
n Exceções
Fernando Albuquerque - fernando@cic.unb.br
Java - Arquitetura
n O modelo Java :
• Cliente carregado por demanda
• Código do cliente independe da plataforma
• Código do cliente é interpretado por máquina virtual
• Linguagem apropriada para aplicações complexas
n Características da linguagem Java :
• Multitarefa Orientada a Objetos
• Distribuída Robusta
• Segura Independente de arquitetura
Fernando Albuquerque - fernando@cic.unb.br
Java - Classes e Objetos
n Elementos de uma classe :
• Atributos- Dados
• Métodos - Código para manipular os dados
n Atributos :
• Uma instância para cada objeto
• Podem ser compartilhados via modificador static
n Controle de acesso aos atributos e métodos :
public private
protected
Fernando Albuquerque - fernando@cic.unb.br
Java - Classes e Objetos
palavra-chave
nome da classe
public class BemVindo {
static String mensagem = "Bem Vindo" ;
public static void main ( String [] args ) {
System. out . println ( mensagem );
}
}
Fernando Albuquerque - fernando@cic.unb.br
Java - Classes e Objetos
n Objetos :
• São instâncias de classes
• Referências são inicialmente criadas
• Objetos são posteriormente criados
n Exemplo :
 criando o objeto
Cliente jose = new Cliente ( ) ;
classe referência para o objeto
Fernando Albuquerque - fernando@cic.unb.br
Java - Classes e Objetos
n Métodos :
• Contém o código que manipula o estado do objeto
• Não podem ter um número variável de parâmetros
• Tem um tipo de retorno
• São chamados como operações sobre os objetos
• Usado o operador ponto ( . )
Fernando Albuquerque - fernando@cic.unb.br
Java - Classes e Objetos
class BemVindo {
static String mensagem = "Bem Vindo" ;
public static void main ( String [ ] args ) {
System. out . println (mensagem.substring (0, 4));
}
}
nome do objeto mensagem
Fernando Albuquerque - fernando@cic.unb.br
Java - Classes e Objetos
n Valores de parâmetros :
• Todos parâmetros são passados por valor
• Valores são portanto copiados
• Modificações no método não afetam valor original
• Atenção na passagem de referências para objetos
n Construtoras :
• Usadas quando necessário mais que um valor inicial
• Podem ter um ou mais argumentos
• Quando não tem argumentos são chamados no-arg
Fernando Albuquerque - fernando@cic.unb.br
Java - Classes e Objetos
• Tipo de retorno é implícito e uma instância da classe
• Tem sempre o mesmo nome da classe
• São chamadas após os campos serem inicializados
• Podem ser explicitamente chamadas via this
public class Circulo {
public double x, y , r;
public Circulo ( double x , double y , double r )
{
this .x = x ;
this .y = y ;
this .r = r ;
}
}
Circulo c = new Circulo ( 1.23 , -1 , .2 );
Fernando Albuquerque - fernando@cic.unb.br
Java - Classes e Objetos
n Finalizadoras :
• Garbage collector libera memória automaticamente
• Finalizadores executados antes de um objeto ser
desalocado
• Útil na desalocação de recursos como descritores e sockets
• Finalizador pode nunca vir a ser executado
• Não há garantia quando finalizadores serão executados
• Não há garantia a respeito da ordem em que serão
executados
protected void finalize () throws IOException {
:
if ( fd != null ) close ( );
}
Fernando Albuquerque - fernando@cic.unb.br
Java - Classes e Objetos
n Pacotes :
• Classe podem ser agrupadas em pacotes
• Possibilitam a organização do trabalho
• Bibliotecas distribuídas em diversos pacotes
• São organizados em hierarquias :
• Classes podem ser usadas após importadas :
java . lang
java . awt. image
import java . awt*;
import java . util .Date;
Fernando Albuquerque - fernando@cic.unb.br
Java - Hierarquias
n Possibilitam :
• Aproveitamento de código
• Herança simples
• Métodos podem ser aproveitados ou redefinidos
n Controle da herança via :
• public - públicos
• protected - protegidos no pacote
• private - privados
Fernando Albuquerque - fernando@cic.unb.br
Java - Hierarquias
nome da classe derivadanome da classe base
class Point extends Object { variáveis privadas
double x ;
double y ;
public void apresenta ( double x , double y ) {
this . x = x ;
this . y = y ;
}
} função-membro pública
Fernando Albuquerque - fernando@cic.unb.br
Java - Hierarquias
n Métodos abstratos :
• Compostos por uma assinatura sem implementação
• Classes com métodos abstratos são abstratas
• Não podem haver instâncias de uma classe abstrata
• Sub-classes podem prover a implementação
• Sub-classes sem implementação são abstratas
• Usada a palavra-chave abstract
public abstract class Circulo {
public abstract double area ();
public abstract double circunferencia ();
}
Fernando Albuquerque - fernando@cic.unb.br
Java - Interfaces
n Conceito :
• Método para declarar um tipo composto apenas por
métodos abstratos e constantes
• Qualquer implementação pode ser posteriormente
definida para os métodos
• Uma classe pode implementar os métodos de uma
interface da forma que o projetista da classe ache
conveniente
• Uma interface pode ter diferentes implementações em
diferentes classes
Fernando Albuquerque - fernando@cic.unb.br
Java - Interfaces
n Declarando uma interface :
interface ContaBancaria {
int AGENCIA = 592;
void cadastrar ( String nomeCliente );
void remover ( String nomeCliente );
}
n Implementando uma interface :
class ContaCorrente
implements ContaBancaria {
:
}
Fernando Albuquerque - fernando@cic.unb.br
Java - Caracteres e Comentários
n Conjunto de caracteres :
• Utilizado o Unicode
• Conjunto de caracteres de 16 bits
• Primeiros 256 caracteres são Latin-1
• Reconhecidas as seqüências de escape \udddd
n Comentários :
• / / comentário
• /* comentário */
Fernando Albuquerque - fernando@cic.unb.br
Java - Controle de Fluxo
n if - else :
if ( expressão- booleana )
enunciado_1;
else
enunciado_2;
n switch :
switch ( valor ) {
case ‘ const _1’ : enunciado_1;
......
default : enunciado_n;
}
Executa se verdadeiro
Executa se falso
Testa condições
Fernando Albuquerque - fernando@cic.unb.br
Java - Controle de Fluxo
n while :
while ( expressão- booleana )
enunciado ;
n do-while :
do
enunciado ;
while ( expressão- booleana );
n for :
for ( expr - inic ; expr - booleana ; expr - incr )
enunciado ;
Executa enquanto verdadeiro
Fernando Albuquerque - fernando@cic.unb.br
Java - Controle de Fluxo
n Labels :
label : enunciado ;
n break :
break ; 
break label ;
n continue :
continue ;
continue label ;
n return :
return ; Termina execução de um método
Salta para o final do corpo do loop 
e calcula a expressão que controla
o loop
Abandona o bloco mais interno
Abandona um bloco externo
Fernando Albuquerque - fernando@cic.unb.br
Java - Exceções
n Erros que podem ocorrer :
• Entrada incorreta de dados ou erros em dispositivos
• Limitações físicas
• Erros de codificação
n Tipos de exceções :
• Implícitas- não precisam ser tratadas
• Explícitas- precisam ser tratadas
n Responsabilidade do tratamento :
• Transferir controle de onde erro ocorreu para código de
tratamento
Fernando Albuquerque - fernando@cic.unb.br
Java - Exceções
n Lançando uma exceção :
String readData ( DataInput in ) throws EOFException
{ . . . .
while ( . . . . )
{ . . . .
 if ( n < len ) throw new EOFException ( );
}
}
Lança exceção Cria objeto da classe
Informa classe da exceção
Fernando Albuquerque - fernando@cic.unb.br
Java - Exceções
n Interceptando exceções :
try { 
 . . . .
}
catch ( TipoExceção e ) {
. . . .
}
finally {
. . . .
}
Código que lança
Código que trata
Código default

Outros materiais