• Like
  • Save
Revisão Sobre Programação Orientada a Objetos com Java
Upcoming SlideShare
Loading in...5
×
 

Revisão Sobre Programação Orientada a Objetos com Java

on

  • 575 views

Aula de revisão sobre Programação Orientada a Objetos com uso de Java para os exercícios e exemplos.

Aula de revisão sobre Programação Orientada a Objetos com uso de Java para os exercícios e exemplos.
O código esta disponível no github.

Statistics

Views

Total Views
575
Views on SlideShare
541
Embed Views
34

Actions

Likes
1
Downloads
19
Comments
0

2 Embeds 34

http://www.moodle.ufba.br 31
https://www.facebook.com 3

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

CC Attribution-NonCommercial LicenseCC Attribution-NonCommercial License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Revisão Sobre Programação Orientada a Objetos com Java Revisão Sobre Programação Orientada a Objetos com Java Presentation Transcript

    • Linguagem Orientada a Objetos Revisão Mario Jorge Pereira mariojp@gmail.com
    • Orientação a Objetos / Java Ambiente Java Orientação a Objetos Tipos e Modificadores Fluxo de Controle Arrays Tratamento de Erro Aplicações Console Interface javax.swing Interface Eventos Aplicações Desktop
    • Ambiente Java JDK JRE Maquina Virtual Java (JVM) Coleta de Lixo Segurança do Código
    • Orientação a Objetos Características: Encapsulamento Ocultar elementos da implementação de uma classe, porém fornecendo uma interface publica para acesso. Herança Extensão Acrescenta novos métodos aos já herdados Sobreposição Redefine os métodos implementados previamente Polimorfismo Comportamentos diferentes para mesma mensagem a depender do tipo.
    • Palavras Chave
    • Tipos Primitivos
    • Wrapper String texto = "12.0"; int numero = Integer.parseInt(texto); Método: Integer.valueOf(String s) : int Integer.parseInt(String s) : Integer
    • Objetos Objetos são conceitos que têm identidade, estado e comportamento Pode-se pensar sobre o mundo real como uma coleção de objetos relacionados Características de OO: Um programa OO é objeto e é composto por objetos O programa OO são objetos se comunicando através de mensagens uns com os outros Os objeto possuem um tipo que descreve seus dados Objetos de tipos iguais podem receber as mesmas mensagens
    • Classes e Objetos
    • Classes Classes são uma especificação para objetos Uma classe define o que um objeto pode ter e o que ele pode fazer. A diferença entre classe e objeto: "Classe" é um gabarito (como a planta de uma casa) "Objeto" é a concretização do gabarito (casas feitas a partir da mesma planta) Resumindo: Classes não são os objetos que representam Classes definem lógica estática Classes não existem no contexto da execução
    • Declaração de Classes em Java [<declaracaoPacote>] [<declaracaoImport>] <modificadores> class <NomeClasse> { [<modificadores>] <tipo> <nome> = [<valorInicial>]; [<modificador>] <NomeClasse> ([<listaArgumentos>]) { [<instruções>] } [<modificadores>] <tipoRetorno> <nome> ([<listaArgumentos>]) { [<instruções>] } }
    • Declaração de Classes em Java package br.com.mariojp.veiculo; public class Carro { private double cargaMaxima = 50.5; private double cargaAtual; public Caro(){ cargaAtual = 10.5; } public double getCargaAtual(){ return cargaAtual; } public void setCarga(double peso){ cargaAtual = peso; } }
    • Fluxos de Controle if (expressão boleana) { instruções; } else { instruções; } for (inicializa; expressão booleana; altera) { instruções; }
    • Resumo Classe Definição (código fonte) de um objeto (instancia) Objeto Uma instancia de uma classe. Um objeto. Atributo Um elemento dados de um objeto. Variável de instancia. Método Um elemento de comportamento de um objeto. Um procedimento. Construtor “Similar a um método” usado para inicializar um novo objeto Pacote Agrupamento de Classes e/ou subpacotes
    • Array String names[]; names = new String[3]; names[0] = "Georgianna"; names[1] = "Jen"; names[2] = "Simon"; String names[] = { "Georgianna", "Jen", "Simon" }; Data data[]; datas = new Data[3]; dates[0] = new Data(22, 7, 1964); dates[1] = new Data(1, 1, 2000); dates[2] = new Data(22, 12, 1964); Data dates[] = { new Data(22, 7, 1964), new Data(1, 1, 2000), new Data(22, 12, 1964) };
    • Tratamento de Erros try { instruções onde pode ocorrer uma Exceção; } catch (Tipo de Exceção instancia_erro) { instruções caso ocorra a Exceção; } finally { instruções que vão ocorrer sempre; } declaracaoMetodo throws tipo Exceção{ instruções onde pode ocorrer uma Exceção; }
    • Exercício 1. Escreva uma classe Ponto contém x e y e que podem ser definidos em construtor Sobrescreva o metodo toString para retornar o x e o y 2. Escreva uma classe Circulo, que contenha raio inteiro e origem do tipo Ponto Dois construtores que define origem e raio Circulo(int x,int y, int raio) Cirtulo(Ponto ponto, int raio) método que retorna a área método que retorna a circunferência use java.lang.Math.PI (Math.PI) Sobrescreva o metodo toString para retornar o raio e a origem
    • Exercício 3. Escreva uma classe Teste com seguinte main: Ponto p1 = new Ponto(2,5); Circulo cir1 = new Circulo(p1,4); Circulo[] circulos = new Circulo[5]; circulos[0] = cir1; circulos[1] = new Circulo(new Ponto(1,2),5); circulos[2] = new Circulo(3,4,5); circulos[3] = new Circulo(1,1,6); circulos[4] = new Circulo(5,5,6); for( Circulo c : circulos ) { System.out.println(c); }
    • Exercício 4. Crie uma classe abstrata Figura que: - contém o atributo String cor e por padrão a cor “branco” - crie um método abstrato string desenhar() 5. Altere a classe Circulo para ela herdar de Figura - Faça as alterações necessárias - Implemente o método desenhar() retornando o nome da figura e a cor. - Implemente um construtor Circulo(String cor) 6. Crie uma classe Quadrado que herda de Figura e implemente o método desenhar(). -Implemente o construtor Quadrado(String cor) -Implemente o construtor Quadrado()
    • Exercício 7. Escreva uma classe Teste com seguinte main: Figura[] figuras = new Figura[5]; figuras[0] = new Quadrado(“Verde”); figuras[1] = new Circulo(“amarelo”); figuras[2] = new Circulo(); figuras[3] = new Quadrado(“azul”); figuras[4] = new Circulo(“preto”); for( Figura f : figuras ) { System.out.println(f.desenhar()); }
    • Formas de percorrer uma Coleção for(Iterator it = <colecao>.iterator() ;it.hasNext() ; ){ <Tipo> <referencia> (<Tipo>) it.next(); } Iterator it = <colecao>.iterator(); while (it.hasNext()){ <Tipo> <referencia> (<Tipo>) it.next(); } for( <Tipo> <referencia> : <coleção> ) { usar a <referencia>; } //JAVA 1.5