Programação Orientada a Objetos

Documentos relacionados
Semântica de Referência e Vetores / Matrizes

Herança. Prof. Leonardo Barreto Campos 1

Introdução à orientação a objetos

Programação de Computadores - I. Profª Beatriz Profº Israel

Análise de Sistemas 3º Bimestre (material 2)

Programação Orientada a Objetos

Linguagem de Programação III Herança

Desenvolvimento Web TCC Turma A-1

Java na Prática. Célio Silva Aula 3

Introdução a Linguagem

Bibliografia. Engenharia de software Ian Sommerville 9ª edição Editora Pearson Prentice Hall

Programação de Computadores I. Linguagem C Função

Programação Visual TIC - 3PA. Lista de Exercícios 01

Modelo Entidade Relacionamento (MER) Professor : Esp. Hiarly Alves

Programação Visual TIC - 3PA. Lista de Exercícios 02

Modelo Entidade-Relacionamento. José Antônio da Cunha CEFET-RN

Programação Orientada a Objeto

Diagrama de Componentes e Implantação

BANCO DE DADOS PARA GERENCIAMENTO E DESENVOLVIMENTO DE SOFTWARE

MDS II Aula 04. Concepção Requisitos Diagrama de Casos de Uso (Use Cases)

Análise e Projeto Orientado a Objetos. Nazareno Andrade Baseado no material dos profs. Hyggo Almeida e Jacques Sauvé

2 Segmentação de imagens e Componentes conexas

Introdução à Programação. Interface, Polimorfismo e Dynamic Binding

Programação Orientada a Objetos em Java. Herança

Orientação a Objetos

Linguagem Técnica de Programação III Orientação a Objetos

HEMOVIDA (CICLO DO SANGUE - Gerenciamento de estoque para grandes eventos)

AULA 1 INTRODUÇÃO A BANCO DE DADOS E VISÃO GERAL DO SQL CONCEITUANDO BANCO DE DADOS MODELO RELACIONAL

Estruturas de Repetição

Programação Orientada a Objetos SANTOS, Rafael

Aula 10 Polimorfismo. Prof. Jefersson Alex dos Santos. Baseado em:

Revisão Diagrama de Caso de Uso. Rodolfo Adamshuk Silva 30/08/2013

PHP Orientado a Objetos Análise e Desenvolvimento de Sistemas Prof. Marcelo da Silveira Siedler siedler@gmail.com

ADMINISTRAÇÃO DE BANCOS DE DADOS MÓDULO 8

Capítulo 4 - Polimorfismo

Programação de Computadores - I. Profª Beatriz Profº Israel

Soluções Inovadoras. FlyFlex. Fly Solution

TUTORIAL - Importação de dados de coleta de larvas de Aedes aegypti na Bairro de Higienópolis no município do Rio de Janeiro para o SPRING

Especificação de Caso de Uso

Programação de Computadores I. Linguagem C Vetores

EMENTA DA DISCIPLINA Hardware e dispositivos de E/S Sistema Operacional Editor de Texto

MANUAL DO PUBLICADOR

COMO CRIAR UM PEDIDO DE COMPRAS

Aula 11: Desvios e Laços

Classificação de Ativo Orçamento e Provisão de Despesa

Introdução à Programação de Computadores Parte I

Lista de Contas: Assinatura. Lista de Contas. Listas de Contas: Descrição. Listas de Contas: Descrição. Listas de Contas: Descrição

Tópicos em Engenharia de Computação

T.I. para o DealerSuite: Servidores Versão: 1.1

Desenvolvimento de Software

DOCUMENTO DE REQUISITO DE SOFTWARE

Num programa em JAVA é possível definir diferentes sequências de execução independente: Threads.

Aula 6: Sobrecarga de Operadores e Herança

Modulo II Padrões GRASP

Bibliografia. Desenvolvimento Orientado a Objetos. Introdução. Bibliografia. O que você vê?

Registro de Retenções Tributárias e Pagamentos

Programação Orientada a Objetos Classes Abstratas Técnico em Informática. Prof. Marcos André Pisching, M.Sc.

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 17 PROFª BRUNO CALEGARO

I. Dados Identificadores Tecnologia em Análise e Desenvolvimento de Sistemas Linguagem de Orientação a Objeto Avançado Luís Carlos dos Santos

Tópicos Avançados em Banco de Dados Dependências sobre regime e controle de objetos em Banco de Dados. Prof. Hugo Souza

Programação Orientada a Objetos. Professor Leonardo Cabral - Larback

Disciplina: Unidade III: Prof.: Período:

Herança. Alberto Costa Neto DComp - UFS

Tutorial de Preenchimento de ARTs. Contrato com a CAIXA

Solicitação de Cadastramento de Instituição de Pesquisa ou Empresa (a partir da versão

Programação Orientada a Objetos JAVA - NETBEANS

Engenharia de Software II

Plano de Trabalho Docente Ensino Técnico

Programação Orientada a Objetos (DPADF 0063)

DOCUMENTAÇÃO SISTEMA DE ADMINISTRAÇÃO DE CONSULTÓRIO MÉDICO

Java RMI. RMI Remote Method Invocation. Chamadas Remotas de Procedimentos (RPC) RPC - Implementação

SISTEMA CAÇA-TALENTOS MANUAL DE OPERAÇÃO PERFIL SECRETARIA

Modelos de Sistema by Pearson Education. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 8 Slide 1.

Tópicos da Aula. Classes e Objetos. Classe Pública em Java. Classes em Java. Assinatura de Métodos. Corpo de Classes e Métodos. Conceitos de classe

PROGRAMAÇÃO AVANÇADA -CONCEITOS DE ORIENTAÇÃO A OBJETOS. Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br

LIBERAÇÃO DE ATUALIZAÇÃO CORDILHEIRA

Objetos não existem isolados

Roteiro. Modelagem com Entidade-Relacionamento Estendido. Processo de Projeto de Banco de Dados. BCC321 - Banco de Dados I. Ementa.

Reuso com Herança a e Composiçã

MATÉRIA TÉCNICA APTTA BRASIL SENSORES MAGNETO-RESTRITIVOS UM CRUZAMENTO DE DOIS TIPOS DE SENSORES CONHECIDOS.

Orientação a Objetos com Java

CRIAÇÃO DE TABELAS NO ACCESS. Criação de Tabelas no Access

Valor do Vale Cultura R$ 50,00 ( cinqüenta reais) mensais

Procedimento para Adequações às Mudanças Tecnológicas do Módulo Autorizador v4

Introdução à Programação. Funções e Procedimentos. Prof. José Honorato F. Nunes honoratonunes@gmail.com

AULA 4 VISÃO BÁSICA DE CLASSES EM PHP

II Semana de Ciência e Tecnologia do IFMG campus Bambuí II Jornada Científica 19 a 23 de Outubro de 2009

Prova de Java. 1) Copie o programa abaixo no eclipse e complete-o, utilizando os conceitos aprendidos durante o curso. (4 pontos)

Conteúdo. 1. Introdução. 2. Levantamento de Requisitos. 3. Análise Orientada a Objetos. 4. Projeto Orientado a Objetos 5. UML. 6.

PHP: Programando com Orientação a Objetos

Sistemas Operacionais. Sincronização: Semáforos Problema dos Leitores/Escritores

RELATÓRIO DEFINIÇÃO. Resumo

Sistemas de Objetos DistribuídosRevisão Java e Java ORBs p.1/26

Transcrição:

Herança Prof. Edwar Saliba Júnior Fevereiro de 2011 Unidade 07 Herança 1

Reutilização / Reuso São palavras-chave no conceito de herança; Reutilizar um código que já tenha sido escrito, e que já esteja sendo utilizado por um outro software, é muito bom. Pois: Evita-se reinventar a roda ; Economiza-se tempo de desenvolvimento; Aumenta-se a qualidade do software, pois, partes reutilizadas já foram testadas e depuradas; Diminui-se o custo para produção do software. Unidade 07 Herança 2

Herança É um recurso que permite que novas classes sejam definidas a partir de classes já existentes; Na UML representa o relacionamento do tipo é um ; Na hierarquia de classes: Superclasse (ou ascendente): são as ascendentes de um classe; Subclasse (ou descendente): são as descendentes de uma classe; Classe mãe: é a ascendente direta de uma classe; Classe filha: é a descendente direta de uma classe. Unidade 07 Herança 3

Herança Pessoa é superclasse de Funcionário e de Cliente; Funcionário e Cliente são subclasses de Pessoa; Funcionário e Cliente herdam as definições da classe Pessoa; As subclasses herdam atributos e métodos da superclasse. Unidade 07 Herança 4

Herança M a m íf e r o H o m e m Mamífero é superclasse de Homem. Homem é subclasse de Mamífero. Homem herda definições da classe Mamífero. Unidade 07 Herança 5

Herança Pensemos em outros exemplos de herança! Unidade 07 Herança 6

Veja o Exemplo Aqui: Conta é superclasse de Conta Corrente e de Conta Poupança; Conta Corrente e Conta Poupança são subclasses de Conta; Significa que: Conta Corrente herda características (atributos) e comportamentos (métodos) de Conta; Conta Poupança que também herda características (atributos) e comportamentos (métodos) de Conta. Unidade 07 Herança 7

Herança Unidade 07 Herança 8

Herança l Conta Corrente possui como atributos: limitechequeespecial e contaespecial. Possui também: número e saldo, pois, herda estes dois atributos da classe Conta; l Conta Corrente possui como métodos: consultarsaldototal, consultarlimitechequeespecial, alterarlimitechequeespecial e alterartipodeconta. Possui também: cadastrar, depositar, sacar, obtersaldo e obternumero, sendo que estes cinco últimos são herdados da classe Conta. Unidade 07 Herança 9

Herança l Conta Poupança possui como atributos: aniversário, número e saldo, pois, herda estes dois últimos da classe Conta; l Conta Poupança possui como métodos: aplicarjuros, aplicarcorrecaomonetaria e cadastraraniversario. Possui também: cadastrar, depositar, sacar, obtersaldo e obternumero, sendo que estes cinco últimos são herdados da classe Conta. Unidade 07 Herança 10

Como Criar Herança em Java A palavra chave extends indica herança em Java; Exemplo: public class ContaCorrente extends Conta A linha acima indica que a classe ContaCorrente herda os atributos e métodos da classe Conta. Unidade 07 Herança 11

Modificador de Acesso Nos relacionamentos de herança, o modificador de acesso: public: indica que o atributo ou método é visível nas subclasses; private: indica que o atributo ou método não é visível nas subclasses; protected: indica que o atributo ou método é visível e, no caso dos atributos, alteráveis pela subclasse. Unidade 07 Herança 12

Chamada de Métodos da Superclasse Para chamar o método construtor da superclasse, usa-se a seguinte linha de comando na subclasse: super(lista de parâmetros); l Redefinição de métodos: se um método é implementado na subclasse B com a mesma assinatura de um método existente na superclasse A, diz-se que o método foi redefinido. Neste caso, o método que será executado para um objeto da classe B será aquele definido na classe B. Unidade 07 Herança 13

Exemplo de Herança em Java Exemplo 01 (pdf) Exemplo 02 (pdf) Unidade 07 Herança 14

Exercício Escreva um software que possua as seguintes classes: Veículo, Carro, Caminhão e Moto (onde estas três últimas são subclasses de Veículo). Seu software deverá ser capaz de armazenar 10 veículos de cada um dos três subtipos especificados. Construa uma estrutura de menus onde o usuário do software possa facilmente manipular este cadastro. Unidade 07 Herança 15

Bibliografia DEITEL, H. M.; DEITEL, P. J. Java Como Programar; tradução Edson Furmankiewicz; revisão técnica Fábio Lucchini. 6a. ed., São Paulo: Pearson, 2005. FERREIRA, Kecia Aline Marques. Slides da disciplina de Programação de Computadores II. CEFET-MG, 2009. Unidade 07 Herança 16