Professional Documents
Culture Documents
Eliane
Craveiro Estudante do curso de Anlise e Desenvolvimento de Sistemas Trabalha com Java no projeto SIEP, da SETEC/MEC Desenvolve com Java desde 2007
Raquel
Carsi Concluinte do curso de Anlise e Desenvolvimento de Sistemas Trabalha com Java no projeto SIEP, da SETEC/MEC Desenvolve com Java desde 2006 Weblog:
raquelcarsi.wordpress.co m
Sobre o mini-curso
Apresentar Apresentar
Elaborar Em
Perguntas,
...um detalhe
Agenda
que Java? Instalando ... Criando o primeiro programa Variveis primitivas Tipo Primitivos Controle de Fluxo Orientao a Objetos Array Modificadores de Acesso Herana e polimorfismo Classes Abstratas Interface
que Java?
Virtual;
JVM?
Java
de Programao;
em 1991; Gosling;
( Carvalho );
O que Java?
a Objetos;
(independente de plataforma);
Caractersticas...
Fases de um Programa
Mquina
Portabilidade Diversidade
de JVMs.
JVM?
JDK
O Java Development Kit composto pelo JRE e um conjunto de ferramentas teis ao desenvolvedor Java; Onde baixar:
JRE
O Java Runtime Environment contm tudo aquilo que um usurio comum precisa para executar uma aplicao Java (JVM e bibliotecas), como o prprio nome diz o Ambiente de execuo Java.
JDK? JRE?
Java
lento???
Desvantagens
Instalando o Java
No
bloco de notas:
public class HelloWord{ public static void main (String[] args){ System.out.println ("Ola mundo"); } }
...usando o eclipse:
Objetivo
de uma IDE:
Apresentando o Eclipse
Variveis
Faa assim:
TipoDaVariavel nomeDaVariavel;
Exemplo:
int idade;
Declarando variveis
Usando variveis
Voc pode declarar uma outra varivel e usar o valor da varivel idade!
Usando variveis
Exemplo:
int idade = 15;
5 dividido por 2 d 2 e tem resto 1. Esse operador % pega o resto da diviso inteira.
Usando variveis
double pi = 3,14;
O tipo char guarda apenas um caractere! Voc deve usar aspas simples!
Usando variveis
Podem conter caracteres, dgitos, _ e $ Devem comear com caractere, _ ou $ No podem conter espaos Maisculas diferentes de minsculas
Exemplos
nota ; x ; y ; raio ; mediaTotal media_total ; media$total ; media1 media2 ; media_1 ; media$1 nomePai ; NomePai ; nome_me
Nomes de Variveis
Tipos Primitivos
boolean int
char long
Tipos Primitivos
Tipo Primitivos
Tamanho/formato 8 bits 16 bits 32 bits 64 bits 32 bits 64 bits 16 bits-Unicode true ou false
Nmeros Reais float Ponto flutuante de preciso simples double Ponto flutuante de preciso dupla Outros tipos char Um caractere boolean Um valor lgico
Tipos Primitivos
Exemplos
Operadores
Operador Descrio Array ndice Mtodo chamada Membro acesso Prefixo ou incremento postfix Prefixo ou decrementar postfix Unrio plus, minus NO bitwise Booleano (lgico) NO Objeto criao Multiplicao, diviso, resto Adio, subtrao Seqncia concatenao Assinado bit shift esquerda para a direita Assinado bit shift direita para a esquerda Unsigned bit shift direita para a esquerda
Operador de Java < <= > >= instanceof == != & & ^ ^ | | && || ?: =
Operador Descrio Inferior, igual ou inferior a Superior, superior ou igual a Referncia teste Igual a No igual a Bitwise AND Booleano (lgico) E Bitwise XOR Booleano (lgico) XOR Bitwise OR Booleano (lgico) OU Booleano (lgico) E Booleano (lgico) OU Condicional Atribuio
Operadores
Sintaxe:
if (condicaoBooleana) { instrues; } CondicaoBooleana uma expresso Que retorna true ou false. Voc pode usar os operadores <, >, <=, >= e outros.
Exemplos:
int idade = 15; String nome = Raquel; if (idade < 18) { If (nome.equals(Eliane)){ System.out.println("No pode entrar"); System.out.println(O nome Eliane); } }
if
Sintaxe:
if (condicaoBooleana) { instrues; } else if (condicaoBooleana) { instrues; } else { instrues; } Indica o comportamento que deve ser executado no caso da expresso booleana ser falsa!
Exemplo:
int idade = 15; if (idade < 18) { System.out.println("No pode entrar"); } else { System.out.println("Pode entrar"); }
If / else
Sintaxe:
while (condio) { } comando; Comando usado para fazer um lao(loop).
Exemplo:
int idade = 15; while(idade < 18) { System.out.println(idade); idade = idade + 1; }
While
Sintaxe:
for (inicializacao; condicao; incremento) { codigo; } int soma = 0; for (int i = 0 ; i < 10 ; i++) soma+=i; System.out.println(A soma +soma);
for
for
switch(seletor_inteiro) { case valor_inteiro_1 : instrues; break; case valor_inteiro_2 : instrues; break; default: instrues; }
switch(letra) { case 'A' : System.out.println("A"); break; case 'B' : System.out.println("B"); break; default: System.out.println("?"); }
switch
Palavras Reservadas
Orientao a Objetos
Sistemas
so complexos Muito difcil um nico indivduo entender todo o sistema. Podemos gerenciar a complexidade, no podemos elimin-la. necessrio pensar na evoluo do sistema
Porque OO ??
Modelagem OO
O ser humano conhece o mundo e gerencia sua complexidade atravs de objetos como desenvolvemos nossa cognio. Desenvolvemos o conceito de OBJETO
Exemplos de objetos bola, carro, camisa, luz, casa, cala, msica, conta bancria, poema, etc
Porque OO ??
Objetos
Classe
Objeto
Objeto uma instncia de uma classe Objetos semelhantes pertencem a mesma classe
Classe e objetos
Pode parecer bvio, mas a dificuldade inicial do paradigma da orientao a objetos justo saber distinguir o que classe e o que objeto. comum o iniciante utilizar, obviamente de forma errada, essas duas palavras como sinnimos.
Objeto
Classe
Descreve um tipo de objeto Define atributos e mtodos Define caractersticas do objeto Operaes que o objeto pode realizar
Atributo Mtodo
Toda
Criando um tipo
Mas para acessar todos esses dados, precisamos construir uma conta, ou melhor, criar uma instncia da classe.
Criando um tipo
class Conta { int numero; String nome; double saldo; double limite; // .. }
Atributos
caractersticas do objeto
Mtodos
Operaes que o objeto pode realizar
class Conta { // ..atributos void sacar(double quantia){..} boolean depositar(double quantia, Conta conta){..} }
Classe em Java
Para criar (construir, instanciar) uma Conta, basta usar a palavra chave new ...
Para acessar o objeto preciso referenciar esse objeto. necessrio uma varivel!
Agora, podemos acessar o objeto recm criado para alterar seu nome, seu saldo etc:
Conta minhaConta; minhaConta = new Conta(); minhaConta.nome = "Duke"; minhaConta.saldo = 1000.0; System.out.println("Saldo atual: " + minhaConta.saldo);
Mtodos
Os mtodos representam o que cada conta faz e como isso feito os seus comportamentos
Mtodos
Quanto voc quer sacar? Esse valor o parmetro do mtodo que est entre parnteses. Essa varivel temporria, ou seja, local.
Mtodos
Mtodos
Retorna No
mtodo sacar podemos retornar um valor booleano indicando se a operao foi bem sucedida ou no.
boolean saca(double valor) { if (this.saldo < valor) { return false; } else { this.saldo = this.saldo - valor; return true; }
minhaConta.saldo = 1000; boolean consegui = minhaConta.saca(2000); if(consegui){ System.out.println("Consegui sacar"); }else{ System.out.println("No consegui sacar"); }
Array (Vetor)
So
objetos que armazenam diversas variveis do mesmo tipo; Cada item em um array chamado de elemento, e cada elemento acessado pela posio numrica.
class ArrayDemo { public static void main(String[] args) { int[] meuArray; // declara um array de inteiros meuArray = new int[10]; // aloca a memria para 10 inteiros meuArray[0] = 100; // inicializa o primeiro elemento meuArray[1] = 200; // inicializa o segundo elemento meuArray[2] = 300; // etc. meuArray[3] = 400; meuArray[4] = 500; meuArray[5] = 600; meuArray[6] = 700; meuArray[7] = 800; meuArray[8] = 900; meuArray[9] = 1000;
Exemplo
} }
System.out.println("Elemento na posicao 0: " + meuArray[0]); System.out.println("Elemento na posicao 1: " + meuArray[1]); System.out.println("Elemento na posicao 2: " + meuArray[2]); System.out.println("Elemento na posicao 3: " + meuArray[3]); System.out.println("Elemento na posicao 4: " + meuArray[4]); System.out.println("Elemento na posicao 5: " + meuArray[5]); System.out.println("Elemento na posicao 6: " + meuArray[6]); System.out.println("Elemento na posicao 7: " + meuArray[7]); System.out.println("Elemento na posicao 8: " + meuArray[8]); System.out.println("Elemento na posicao 9: " + meuArray[9]);
...continuao do exemplo
Elemento Elemento Elemento Elemento Elemento Elemento Elemento Elemento Elemento Elemento
na na na na na na na na na na
posio posio posio posio posio posio posio posio posio posio
0: 1: 2: 3: 4: 5: 6: 7: 8: 9:
100 200 300 400 500 600 700 800 900 1000
Voc
Declarando um array
Do
byte[] meuArrayDeBytes; short[] meuArrayDeShorts; long[] meuArrayDeLongs; float[] meuArrayDeFloats; double[] meuArrayDeDoubles; boolean[] meuArrayDeBooleans; char[] meuArrayDeChars; String[] meuArrayDeStrings;
Array
Criar
As
meuArray[0] = 100; // inicializa o primeiro elemento meuArray[1] = 200; // inicializa o segundo elemento meuArray[2] = 300; // etc.
Cada
Continuao
Alternativamente,
...ou
Encapsulamento
Getters:
Mtodo que atribui/modifica o valor de um atributo set[nome do atributo] Ex: setIdade(Integer idade), setSalario(Double salario).
Getters e Setters
Herana
Conceito; Diferena.
Reescrita
Conceito; Exemplos.
Polimorfismo
Classes Abstratas
No
No
Criada
Classe abstrata
Interface
No
No
Criada
Classe abstrata
Um comportamento compartilhado por vrias classes onde cada classe deve implementar os mtodos da interface Uma alternativa herana mltipla
prtica representa:
Interface
Interface
public interface Pet { public abstract void beFriendly(); public abstract void play(); } public class Dog extends Canine implements Pet { public void beFriendly(){ ... } public void play(){ ... } public void roam(){ ... } public void eat(){ ... } }
Interface
Diagrama UML
No
se esquea - o google seu amigo ;) Participe das listas de discusso, blogs, fruns .. Interaja !!! Existem bons livros na rea. Dicas:
GUJ - www.guj.com.br/ JavaRN - javarn.dev.java.net/