PROGRAMAÇÃO ORIENTADA A OBJETOS II -TÉCNICAS DE OO. Prof. Angelo Augusto Frozza, M.Sc.
|
|
- Luciana de Oliveira Sampaio
- 6 Há anos
- Visualizações:
Transcrição
1 PROGRAMAÇÃO ORIENTADA A OBJETOS II -TÉCNICAS DE OO Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br
2 ROTEIRO 4. Técnicas de Orientação a Objetos Classes e objetos Herança Métodos Subscritos Métodos Sobrecarregados Polimorfismo Classes Abstratas Interfaces
3 CLASSES Classes são os blocos de construção mais importantes de qualquer sistema OO; Uma Classe é uma descrição de um conjunto de objetos que compartilham os mesmos atributos, operações, relacionamentos e semântica; Classes capturam o vocabulário do sistema em desenvolvimento (substantivos, verbos e adjetivos); Podem incluir abstrações que são parte do domínio do problema, assim como as classes que fazem uma implementação; P.ex.: itens de software, de hardware e até itens puramente conceituais.
4 CLASSES A modelagem de um sistema envolve a identificação de itens considerados importantes de acordo com uma determinada visão Domínio do sistema Por exemplo: A construção de uma casa envolve paredes, portas, janelas, cômodos, luzes etc.; Cada conceito pode ser diferenciado dos demais [atributos, métodos (operações) e relacionamentos];
5 CLASSES Toda Classe possui: Nome - a diferencie das outras classes; Atributos propriedades que descrevem um intervalo de valores que as instâncias da classe podem apresentar; Abstraem os tipos de dados ou estados que os objetos de uma classe podem abranger; Operações (métodos) implementam serviços que podem ser solicitados por algum objeto da classe para modificar o comportamento; Abstraem algo que pode ser feito com um objeto; Algumas vezes, a chamada a uma operação de um objeto altera os atributos ou o estado do mesmo;
6 CLASSES Visibilidade
7 CLASSES Operações (métodos) são descritos por: Visibilidade Nome Lista de parâmetros Tipo de retorno
8 CLASSES public class Cliente { // Atributos // // Construtor da classe public Cliente() { // Métodos //
9 RELACIONAMENTOS Objetos se relacionam entre si através de operações (métodos); Exemplo: Objeto FAZENDEIRO: operação tirarleite(); Objeto VACA: operação produzirleite(); Tipos de relacionamentos: Associação: simples, agregação, composição Herança Dependência
10 ATRIBUTOS DE UMA ASSOCIAÇÃO Nome Nome da associação Papéis Papéis das classes que estão relacionadas pela associação O papel da classe A é o nome do atributo que a classe B possui que guarda o objetivo da classe A Multiplicidades Quantidades de objetos associados a um papel Navegabilidade Indica a direção da relação entre as classes
11 ASSOCIAÇÃO SIMPLES Utilizada para relacionar duas classes cujos objetos podem se comunicar; Semanticamente representam que as classes "conhecem uma a outra", "estão conectadas com", "para cada X existe um Y ; Deve-se identificar o papel das classes na associação;
12 ASSOCIAÇÃO SIMPLES public class Funcionario { private Funcionario gerente; private List<Funcionario> subordinadoss = new ArrayList<Funcionario>(0); // Demais atributos // // Construtor public Funcionario() { // Métodos setters e getters //
13 AGREGAÇÃO Representa que um tipo de objeto é composto, pelo menos em parte, de outro objeto em uma relação todo/parte; O objeto parte é um atributo do objeto todo; O ciclo de vida do objeto parte é limitado ao ciclo de vida do objeto todo; Porém, a parte vive sem o todo e o todo existe sem as partes (relação todo-parte fraca); A agregação indica que uma das classes do relacionamento é uma parte ou está contida em outra classe Semanticamente representa: "consiste em", "contém", "é parte de".
14 AGREGAÇÃO Exemplo: Marina e navios: uma marina contém navios Carro e rodas
15 AGREGAÇÃO public class Navio { private String nomenavio; Outro exemplo: Pedido e ItemPedido public Navio() { public class Marina { private String nomemarina; private ArrayList<Navio> navios; public Marina() { navios = new ArrayList<Navio>(); public void add(navio umnavio) { navios.add(umnavio);
16 COMPOSIÇÃO Semelhante a agregação; Existe quando uma classe é composta por outra, de tal forma que a parte que compõe não existe se não existir o todo; Relação todo-parte forte: a parte não vive sem o todo ; Semanticamente equivale a um atributo ( é composto de ); Partes de uma composição não podem ser referenciadas por objetos externos; A remoção do todo implica na remoção das partes; Exemplo: Vaca é composta por Chifres, Cascos, Rabo, Úbere etc.
17 COMPOSIÇÃO public class Peca{ private int codigopeca; public Peca() { public class Motor { private int idmotor; private ArrayList<Peca> pecas; public Motor() { pecas = new ArrayList<Pecas>(); public void add(peca umapeca) { pecas.add(umapeca);
18 AGREGAÇÃO X COMPOSIÇÃO Imagine um cenário com 2 objetos: "A" e "B Estamos na dúvida da relação entre eles, então fazemos as perguntas a seguir: 1 - Se eu "deletar" o A, terei que "deletar" também o B? Sim = Composição Não = pode ser Agregação ou nada (vá para a pergunta 2) Exemplo: Pedido e Compras: um Pedido pode ter várias Compras, mas se excluir o Pedido, precisa excluir as Compras não faz sentido ter um objeto Compra sem que ele esteja em algum Pedido sua única razão de existir é "compor" um pedido
19 AGREGAÇÃO X COMPOSIÇÃO 2 - O objeto B tem alguma utilidade sozinho? Sim = Associação simples Não = Agregação Exemplo: Carro e Rodas: se excluir um Carro, não precisa excluir suas Rodas, pois elas podem servir pra outro Carro. Porém, uma roda tem utilidade sozinha? Geralmente não, ela serve sempre para "agregar" uma funcionalidade a outro objeto, como a funcionalidade de andar ao Carro (ou a um outro veículo qualquer), ou até mesmo a funcionalidade para crianças sentarem em um "balanço de árvore", etc.
20 AGREGAÇÃO X COMPOSIÇÃO O caso de Composição é o mais claro; Já o de Agregação muitas vezes depende da interpretação do analista, pois alguém pode contestar que uma roda tem sim uma utilidade sozinha para algum caso bizarro que ele observou, ou que existe no "mundo particular dele".
21 HERANÇA (GENERALIZAÇÃO) Uma classe pode possuir um relacionamento de herança com outra classe (mãe e filha); A classe mãe é menos especializada (mais genérica) que a classe filha; Semanticamente representa é um tipo ou é do tipo ; Por exemplo: Vaca é um tipo de mamífero a classe Vaca é derivada da classe Mamifero
22 HERANÇA public class Veiculo{ private String chassi; private String placa;... public Veiculo() { public class VeiculoDeCarga extends Veiculo { private double cargamaxima; public VeiculoDeCarga () { public class VeiculoDePasseio extends Veiculo { private double quantidadedepassageiros; public VeiculoDePasseio () {
23 INTERFACE É uma classe sem nenhuma implementação; Contem apenas atributos static final; Todas as operações são abstratas; Os métodos têm apenas a sua assinatura; O relacionamento de realização indica as classes que implementam a interface; Equivale a generalização; É uma alternativa para a herança múltipla em Java;
24 INTERFACE public interface Autenticavel { public boolean autentica(int senha); public class Gerente implements Autenticavel { public Gerente () { public boolean autentica (int senha) { public class Cliente implements Autenticavel { public Cliente () { public boolean autentica (int senha) {
25 DEPENDÊNCIA A Dependência deixa explícito que uma mudança na especificação de um elemento pode alterar a especificação do elemento dependente; Os objetos de uma classe esporadicamente usam serviços dos objetos de outra classe; Exemplos de uso: Uma classe chama métodos de outra; Uma classe tem operações que retornam outra classe; Uma classe tem operações que esperam como parâmetro outra classe;
26 DEPENDÊNCIA public class Moeda { public Moeda(double umvalor, String umnome) { public double getvalor() { public class CaixaRegistradora { public CaixaRegistradora() { public void entrepagamento (int qtdmoeda, Moeda tipomoeda) {
27 MULTIPLICIDADE Representa o número de elementos de uma propriedade; Estrutura X..Y onde: Opcional: X = 0 Mandatório: X = 1 Somente um valor: Y = 1 Multivalorado: Y > 1 Valores clássicos: (equivalente a 1..1 default) * (equivalente a 0..*) 1..*
28 CLASSES DE ASSOCIAÇÃO Permitem a adição de informações em uma associação; Devem ser transformadas em classes comuns posteriormente para viabilizar implementação;
29 PROPRIEDADES E OPERAÇÕES ESTÁTICAS Propriedades que não são instanciadas nos objetos; Operações que atuam somente sobre propriedades estáticas; Ambos são acessados diretamente na classe: Exemplo: Pedido.getProximoNumero(); Não é necessário um objeto para acessar a propriedade; Operações estáticas são sublinhadas no diagrama;
30 PROPRIEDADES E OPERAÇÕES ESTÁTICAS public class ContaBancaria { private double saldo; private int numeroconta; private static int ultimacontacriada = 1000; public static final double TAXA_CHEQUE_ESPECIAL = 5; public ContaBancaria () { // aqui vai uma forma de inicializar a // propriedade estática, por exemplo: this.ultimacontacriada++; this.numeroconta = this.ultimacontacriada; Desafio: Implementar um protótipo do jogo Percorrer Labirinto.
31 PROPRIEDADES DERIVADAS São propriedades que na verdade não existem como atributos ou associações; Podem ser inferidas por outras propriedades da classe; É interessante explicitar através de nota ou restrição a fórmula de derivação; São marcadas com o símbolo / ;
32 CLASSES E OPERAÇÕES ABSTRATAS Classes que não podem ter instâncias Usualmente têm operações abstratas, ou seja, sem implementação; Suas subclasses usualmente são concretas Implementam métodos com comportamentos específicos para as operações abstratas; Utilizam nome em itálico;
33 PACOTES Em algumas situações se deseja ter uma visão geral das partes do sistema; Para isso, o diagrama de pacotes é a ferramenta indicada; Pacotes agregam classes e outros pacotes Dependências podem ser inferidas indiretamente; Exemplo: Classe C1 pertence ao pacote P1 Classe C2 pertence ao pacote P2 Classe C1 depende da classe C2 Logo, pacote P1 depende do pacote P2
34 PACOTES
35 DIAGRAMA DE CLASSES Regras úteis: 1. Identificar todas as classes participando na solução proposta pelos diagramas de interação; 2. Desenhar as classes num diagrama de classe; 3. Incluir os atributos identificados no modelo conceitual; 4. Adicionar métodos tal como identificados nos diagramas de interação; 5. Adicionar informação sobre o tipo dos atributos e métodos; 6. Adicionar as associações necessária para permitir a visibilidade de atributos requisitada; 7. Adicionar setas de navegabilidade para indicar a direção da visibilidade de atributos; 8. Adicionar relacionamentos de dependência para indicar outros tipos de visibilidade;
PROGRAMAÇÃO ORIENTADA A
PROGRAMAÇÃO ORIENTADA A OBJETOS II -TÉCNICAS DE OO Prof. Angelo Augusto Frozza, MS M.Sc. frozza@ifc-camboriu.edu.br ROTEIRO 4. Técnicas de Orientação a Objetos Classes e objetos Herança Métodos Subscritos
Leia maisPROGRAMAÇÃO ORIENTADA A OBJETOS I -TÉCNICAS DE OO. Prof. Angelo Augusto Frozza, M.Sc.
PROGRAMAÇÃO ORIENTADA A OBJETOS I -TÉCNICAS DE OO Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza ROTEIRO Técnicas de Orientação a Objetos Classes e objetos Métodos Subscritos Métodos Sobrecarregados
Leia maisProgramação Orientada a Objetos Relacionamentos entre classes
Programação Orientada a Objetos Relacionamentos entre classes Prof. Vicente Paulo de Camargo RELACIONAMENTO ENTRE CLASSES Interface agregação Dependencia composição generalização associação RELACIONAMENTO
Leia maisDiagrama de Classes. Viviane Torres da Silva 2/es1
Diagrama de Classes Viviane Torres da Silva viviane.silva@ic.uff.br http://www.ic.uff.br/~viviane.silva/2010. 2/es1 O que é? Diagrama mais utilizado da UML Representa os tipos (classes) de objetos de um
Leia maisLinguagem de Programação. Diagrama de classes
Linguagem de Programação Diagrama de classes Joyce França Professora de Ciência da Computação - IFNMG 2 Agenda Diagrama de classes Herança Associação Agregação Exercícios 3 Diagrama de classes Mostra um
Leia maisDiagrama de Classes. Viviane Torres da Silva
Diagrama de Classes Viviane Torres da Silva viviane.silva@ic.uff.br http://www.ic.uff.br/~viviane.silva/es1 O que é? Diagrama mais utilizado da UML Representa os tipos (classes) de objetos de um sistema
Leia maisDiagrama de Classes. Classes. Relacionamentos. Atributos Métodos. Associação. Generalização Dependência Realização. Agregação Composição
Diagrama de Classes Diagrama de Classes Classes Atributos Métodos Relacionamentos Associação Agregação Composição Generalização Dependência Realização Sobre Classes São o elemento mais importante de qualquer
Leia mais15/04/2013. Outro Diagrama de Classes. Primeiro Diagrama de Classes. Diagrama de Classes. Atributos. Eduardo Figueiredo
DCC / ICEx / UFMG Primeiro Diagrama de Classes Diagrama de Classes Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Professor Aluno matricula Outro Diagrama de Classes Diagrama de Classes Serve de
Leia maisDiagrama de Classes. Régis Patrick Silva Simão. Régis Simão Diagrama de Classes 1/42
Diagrama de Classes Régis Patrick Silva Simão Régis Simão Diagrama de Classes 1/42 Agenda Introdução Objetos Classes Atributos Operações & Métodos Relacionamentos Relacionamento: Associação Nome de Relacionamento
Leia maisp Imagine que um Sistema de Controle do Banco pode ser acessado, além dos Gerentes, pelos Diretores do Banco
1 Expandindo o Sistema p Imagine que um Sistema de Controle do Banco pode ser acessado, além dos Gerentes, pelos Diretores do Banco class Diretor extends Funcionario { public boolean autentica(int senha)
Leia maisINSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPUS JOÃO CÂMARA UML UNIFIED MODELING LANGUAGE
1 INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPUS JOÃO CÂMARA UML UNIFIED MODELING LANGUAGE Nickerson Fonseca Ferreira nickerson.ferreira@ifrn.edu.br O que é?? 2 A UML
Leia maisLinguagem de Programação II Programação Orientada a Objetos. Orientação a Objetos
Linguagem de Programação II Programação Orientada a Objetos Orientação a Objetos Prof. Alessandro Borges 2 Tópicos Introdução à Programação Orientada a Objetos Conceitos Objetivos Classes e Objetos Atributos
Leia maisDiagrama de Classes. Leonardo Gresta Paulino Murta
Diagrama de Classes Leonardo Gresta Paulino Murta leomurta@ic.uff.br O que é? Diagrama mais u>lizado da UML Representa os >pos (classes) de objetos de um sistema Propriedades desses >pos Funcionalidades
Leia maisClasse Abstrata e Interface
Orientação a objetos com Java Classe Abstrata e Interface Byron Leite byron.leite@gmail.com 1 Herança Agenda Geral Parte 04 Encapsulamento Pacotes Modificadores de Acesso private, default, protected, public
Leia maisDiagramas de Classes. ESII Profª. Andressa Falcade URI Santiago
Diagramas de Classes Conceitos Básicos O caso de uso fornece uma perspectiva do sistema de um ponto de vista externo (do ator) Internamente os objetos colaboram para atender às funcionalidades do sistema
Leia maisClasses e Objetos. Sintaxe de classe em Java
Classes e Objetos Classes e Objetos A Programação Orientada a Objetos (POO) é uma técnica de programação que se baseia na construção de classes e utilização de objetos. Os objetos são formados por dados
Leia maisEngenharia de Software. Aula 10 Representação dos Conceitos de Orientação a Objetos. Prof. Me. Rogério Ferreira
Engenharia de Software Aula 10 Representação dos Conceitos de Orientação a Objetos Prof. Me. Rogério Ferreira 2 Roteiro Representação dos Conceitos OO Mensagens Navegabilidade Pacotes Encapsulamento Herança
Leia maisProgramação Orientada a Objetos. Professor: André Luis Meneses Silva br.geocities.com/programacao2ufs
Programação Orientada a Objetos Professor: André Luis Meneses Silva andreluis.ms@gmail.com br.geocities.com/programacao2ufs [ Conteúdo ] Objeto Mensagens Classe Encapsulamento Visibilidade Membros de Instância
Leia maisUNIVERSIDADE PAULISTA - UNIP ICET INSTITUTO DE CIÊNCIAS EXATAS E TECNOLÓGIA
LPOO - Linguagem de Programação Orientada a Objetos Prof. Msc. Célio R. Castelano Página 1 de 7 Curso Ciência da Computação Professor Célio Ricardo Castelano UNIVERSIDADE PAULISTA - UNIP ICET INSTITUTO
Leia maisJava para Desktop. Programação Orientada à Objetos 2 JSE
Java para Desktop Programação Orientada à Objetos 2 JSE Encapsulamento significa "ocultar informações, ele define que cada objeto contém todos os detalhes de implementação necessários sobre como ele funciona
Leia maisPROJETO DE DADOS PROJETO ARQUITETURAL BÁSICO. Projeto de Programas PPR0001
1 PROJETO DE DADOS PROJETO ARQUITETURAL BÁSICO Projeto de Programas PPR0001 2 Atividades Envolvidas Preliminar Realizar a organização dos dados considerando a tecnologia que será utilizada em módulos (exemplo:
Leia maisProject-Based Learning TADS MS Diagrama de Classes
Bagé, 05 de abril de 2018 Project-Based Learning TADS - 01 2018 MS Diagrama de Classes Leandro Camargo Professor EBTT www.leandrocamargo.com.br (53)984012416 As classes são representadas por retângulos
Leia maisProgramação Orientada a Objetos. Prof. Diemesleno Souza Carvalho
Programação Orientada a Objetos Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br http://www.diemesleno.com.br Programação Orientada a Objetos Na aula passada, vimos: Herança Programação Orientada
Leia maisINF1013 MODELAGEM DE SOFTWARE
INF1013 MODELAGEM DE SOFTWARE Departamento de Informática PUC-Rio Ivan Mathias Filho ivan@inf.puc-rio.br Programa Capítulo 3 Modelo de Classes de Software Navegação 1 Programa Capítulo 3 Modelo de Classes
Leia maisHerança. Herança. Herança. Herança. Herança. Programação Orientada a Objetos
e Ligação Dinâmica Programação Orientada a Objetos e Polimorfismo A é a contribuição original do paradigma de programação orientado a objetos Fundamentos chave do paradigma OO: Abstração de Dados A herança
Leia maisLinguagem de Programação Orientada a Objeto Abstração - Encapsulamento
Linguagem de Programação Orientada a Objeto Abstração - Encapsulamento Professora Sheila Cáceres Variáveis locais Campos são um tipo de variável. Eles: armazenam valores por toda a vida de um objeto; e
Leia maisProf. Vicente Paulo de Camargo UML - INTRODUÇÃO UML = Unified Modeling Language = linguagem de modelagem de sistemas Permite especificar, visualizar e documentar modelos de software orientados a objetos
Leia maisMODELAGEM VISUAL DE OBJETOS COM UML DIAGRAMA DE CLASSES.
MODELAGEM VISUAL DE OBJETOS COM UML DIAGRAMA DE CLASSES lucelia.com@gmail.com Externamente ao sistema, os atores visualizam resultados de cálculos, relatórios produzidos, confirmações de requisições solicitadas,
Leia maisProgramação Orientada a Objetos. Vagner Luz do Carmo - Vluzrmos
Programação Orientada a Objetos Vagner Luz do Carmo - Vluzrmos Questão 1 Dada a seguinte classe na linguagem JAVA: public class Carro { public String retornacor(){ ; return Azul ; private String retornachassi(){
Leia maisUML (Linguagem Modelagem Unificada) João Paulo Q. dos Santos
UML (Linguagem Modelagem Unificada) João Paulo Q. dos Santos joao.queiroz@ifrn.edu.br Roteiro A importância da UML para projetar sistemas. Principais características do diagrama de classes e de sequência.
Leia maisUML Diagrama de Classes
CBSI Curso de Bacharelado em Sistemas de Informação UML Diagrama de Classes Prof. Dr. Sandro Ronaldo Bezerra Oliveira srbo@ufpa.br www.ufpa.br/srbo Análise e Projeto de Sistemas Faculdade de Computação
Leia maisPOO29004 Programação Orientada a Objetos
POO29004 Programação Orientada a Objetos Classe abstrata, interface e polimorfismo Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br http://docente.ifsc.edu.br/mello/poo
Leia maisLinguagem de Programação IV Introdução
Linguagem de Programação IV Introdução Prof. Alessandro Borges 2 Tópicos Orientação a objetos Classe Objeto Abstração Encapsulamento Herança Polimorfismo Plataforma Java 3 4 POO é um paradigma de programação
Leia maisRequisitos de sistemas
Requisitos de sistemas Unidade III - Casos de Uso Identificação de casos de uso Conceitos de orientação a objetos Modelagem do diagrama de classes e casos de uso 1 Casos de uso CONCEITO Especifica o comportamento
Leia maisProgramação Orientada a Objectos - P. Prata, P. Fazendeiro
7 Classes Abstractas e Interfaces Classe Abstracta Classe em que pelo menos um dos métodos de instância não é implementado. Exemplo: public abstract class Forma{ public abstract double area(); public abstract
Leia maisIntrodução. à UML. Histórico (cont.) Histórico Definição Benefícios Notação Diagrama de Classes Diagramas de Interação Conclusões Revisão
Sumário Introdução à UML BSI Bacharelado em Sistemas de Informação LOO Linguagens Orientadas a Objetos Humberto Mossri de Almeida hmossri_cursos@yahoo.com.br Marcelo Nassau Malta nassau_cursos@yahoo.com.br
Leia maisProgramação Java. Marco Fagundes. - Herança, Classes Abstratas e Interfaces Marco Fagundes -
Programação Java - Herança, Classes Abstratas e Interfaces - Marco Fagundes mfagundes@tre-pa.gov.br 1 Tópicos Herança Ligação Dinâmica Polimorfismo 2 Herança Herança é um conceito que mapeia as classes
Leia maisOrientação a objetos. Objetos ou Instâncias I
Orientação a objetos Objetos ou Instâncias Métodos ou Mensagens Encapsulamento Classes Variáveis da Classe X Variáveis da Instância Métodos da Classe X Métodos da Instância Relacionamentos Identificando
Leia maisComputação II Orientação a Objetos
Computação II Orientação a Objetos Fabio Mascarenhas - 2016.2 http://www.dcc.ufrj.br/~fabiom/java Interfaces Uma interface é uma forma abstrata de descrever um objeto A classe fixa a forma de um objeto
Leia maisLinguagem de Modelagem Unificada UML
Linguagem de Modelagem Unificada UML Parte 1 Rosemary Silveira Filgueiras Melo rosesfmelo@hotmail.com 1 Tópicos abordados Paradigma Orientado a Objetos Linguagem UML e seus principais diagramas Diagramas
Leia maisModelagem Orientada a Objeto
UNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCIÊNCIAS, LETRAS E CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO E ESTATÍSTICA Modelagem Orientada a Objeto Engenharia de Software 2o. Semestre de
Leia maisProgramação Orientada a Objetos. Prof. Diemesleno Souza Carvalho
Programação Orientada a Objetos Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br http://www.diemesleno.com.br Programação Orientada a Objetos Na aula passada, vimos: Classes Abstratas Programação
Leia maisTÉCNICAS DE ORIENTAÇÃO A OBJETOS
TÉCNICAS DE ORIENTAÇÃO A OBJETOS APLICAÇÃO EM: C# E JAVA Sumário INTRODUÇÃO... 4 PARADIGMAS DE PROGRAMAÇÃO... 5 PROGRAMAÇÃO PROCEDURAL... 5 PROGRAMAÇÃO ESTRUTURADA... 5 PROGRAMAÇÃO ORIENTADA A OBJETOS...
Leia maisComposição e Herança. carro meucarro = new carro();
Composição e Herança Um dos conceitos mais interessantes das linguagens orientadas a objeto é a reutilização de código. Mas para isso realmente funcionar, você tem que conseguir fazer mais do que simplesmente
Leia maisInstituto de Informática Estrutura de Dados II
Instituto de Informática Estrutura de Dados II Revisão de Métodos em Classes Aplicada a Estrutura de Dados Básicas 20/08/2018 Profa. Lucília Gomes Ribeiro Prof. Dirson S Campos Programação em Java q O
Leia mais1 Introdução. 1.1 Teoria dos Sistemas 23/4/2010
1 1 Introdução 1.1 Teoria dos Sistemas 1.2 Constituição dos sistemas 1.3 Natureza dos sistemas 1.4 Parâmetros do sistema 1.5 Descrição de sistemas 1.6 Desafios enfrentados no desenvolvimento 1.7 Perfil
Leia maisDiagrama de Classes (Notação) - Aula 11 (parte 2)
Universidade Federal de Mato Grosso do Sul Sistemas de Informação - CPCX Diagrama de Classes (Notação) - Aula 11 (parte 2) Prof. Fernando Maia da Mota Slides gentilmente cedidos por Profa. Dra. Maria Istela
Leia maisUML. Modelando um sistema
UML Modelando um sistema Fases do desenvolvimento de Software Análise de requisitos Análise Projeto Programação Análise de Requisitos Esta fase captura as intenções e necessidades dos usuários do sistema
Leia maisA modelagem é tida como a parte central de todas as atividades para a construção de um bom sistema, com ela podemos:
Módulo 6 Análise Orientada a Objeto É interessante observar como a análise orientada a objeto utiliza conceitos que aprendemos há muito tempo: objetos, atributos, classes, membros, todos e partes. Só não
Leia maisPOO UML e Outros Conceitos. Prof. Vicente Paulo de Camargo
Prof. Vicente Paulo de Camargo UML - INTRODUÇÃO UML = Unified Modeling Language = linguagem de modelagem de sistemas Permite especificar, visualizar e documentar modelos de software orientados a objetos
Leia maisComputação II Orientação a Objetos
Computação II Orientação a Objetos Fabio Mascarenhas - 2014.1 http://www.dcc.ufrj.br/~fabiom/java Interfaces Uma interface é uma forma abstrata de descrever um objeto A classe fixa a forma de um objeto
Leia maisLinguagem de Programação II Herança
Linguagem de Programação II Herança Prof. Alessandro Borges 2 Tópicos Reutilização de classes Delegação Herança Definição Superclasse e Subclasse A palavra reservada extends Método construtor com herança
Leia maisProgramação Orientada a Objetos 2 Flávio de Oliveira Silva, M.Sc.
Orientação a Objetos Revisão Conceitos CLASSE CLASSIFICAÇÃO GENERALIZAÇÃO ESPECIALIZAÇÃO HERANÇA INTERFACES POLIMORFISMO SOBRECARGA ENCAPSULAMENTO ABSTRAÇÃO MODULARIZAÇÃO 9 CLASSE Classe é um agrupamento
Leia maisAula 3 POO 1 Classe e Objeto. Profa. Elaine Faria UFU
Aula 3 POO 1 Classe e Objeto Profa. Elaine Faria UFU - 2019 Sobre o Material Agradecimentos Aos professores José Gustavo e Fabiano, por gentilmente terem cedido seus materiais. Os slides consistem de adaptações
Leia maisHerança Tiago Eugenio de Melo
Herança Tiago Eugenio de Melo tiago@comunidadesol.org Herança Conceito: Herança é a capacidade de especializar tipos de objetos (classes), de forma que os tipos especializados contenham, além de características
Leia maisJava Standard Edition (JSE)
Java Standard Edition (JSE) Capítulo 05. Encapsulamento, Modificadores de acesso e atributos de classe Esp. Márcio Palheta MSN: marcio.palheta@hotmail.com 1 Agenda Revisão da aula anterior; Motivação Organização;
Leia maisPolimorfismo: aprendendo a prever o futuro. Polimorfismo: aprendendo a prever o futuro. Definições (2/5) Definições Tipos de Polimorfismo
Polimorfismo: aprendendo a prever o futuro BSI Bacharelado em Sistemas de Informação LOO Linguagens Orientadas a Objetos Sumário Definições Tipos de Polimorfismo Dicas para o Polimorfismo Eficaz Armadilhas
Leia maisLista 05 Herança. public class PessoaFisica extends Pessoa { private String RG; public PessoaFisica(){ super(); } public String getrg(){ return RG; }
Lista 05 Herança 1. Analisando a classe Java abaixo podemos observar que a mesma possui apenas um atributo, um construtor e dois métodos. Perceba que dentro do método main estão sendo invocados métodos
Leia maisPROJETO DE DESENVOLVIMENTO DE SOFTWARE
PROJETO DE DESENVOLVIMENTO DE SOFTWARE Professor: Diego Oliveira Aula 12: Diagrama de Classes Diagrama de Classes Seu principal objetivo é permitir a visualização das classes que vão compor o sistema,
Leia maisO que estas classes possuem em comum? 1) 2) 3)
Material de Apoio 5 pg. 1/5 Sumário Este material apresenta conceitos gerais de herança. Em aula também serão abordados outros conceitos: classe abstrata, polimorfismo e ligação dinâmica. Motivação M1:
Leia maisDaniel Wildt
Orientação a Objetos 1 Daniel Wildt http://danielwildt.blogspot.com Agenda 2 Orientação a Objetos Classe x Objeto Representação classe Atributos / operações Construtores e Destrutores Liberando memória
Leia maisDiagramas de Classes. Diagramas de Classes. Diagramas de Classes. Análise e Projeto de Sistemas OO
Análise e Projeto de Sistemas OO s Representam os tipos de objetos existentes no modelo Descritas a partir de seus atributos, operações e restrições Podem ser organizadas segundo uma estrutura de generalização/especialização
Leia maisASSOCIAÇÃO ENTRE CLASSES
Cursos: Análise, Ciência da Computação e Sistemas de Informação Programação I - Prof. Aníbal Notas de aula 5 ASSOCIAÇÃO ENTRE CLASSES O objetivo deste texto é rever, um pouco mais detidamente, o relacionamento
Leia maisProgramação Orientada a Objetos Flávio de Oliveira Silva 144
HERANÇA Herança é a capacidade de uma subclasse de ter acesso as propriedades da superclasse(também chamada classe base) relacionada a esta subclasse. Dessa forma os atributos e métodos de uma classe são
Leia mais1 Introdução e Conceitos básicos
1 Introdução e Conceitos básicos Aula 02 Sumário Capítulo 1 Introdução e Conceitos básicos 1.1 Modelos 1.2 Tipos primitivos de dados 1.3 Tipo Abstrato de dados 1.4 Orientação a Objetos 1.4.1 Classe 1.4.2
Leia maisPROJETO DE BANCO DE DADOS -PROJETO CONCEITUAL. Prof. Angelo Augusto Frozza, M.Sc.
PROJETO DE BANCO DE DADOS -PROJETO CONCEITUAL Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza PROJETO CONCEITUAL Levantamento de requisitos Modelagem Conceitual Modelo ER PROJETO CONCEITUAL
Leia maisProgramação para Games II. Professor Ariel da Silva Dias Orientação a Objetos
Programação para Games II Professor Ariel da Silva Dias Orientação a Objetos Pacotes Pacotes são um modo de organizar classes e interfaces Um programa pode ser formado por centenas de classes individiduais;
Leia maisAnálise de Sistemas 4º Bimestre (material 3)
Análise de Sistemas 4º Bimestre (material 3) Permite a visualização das classes que irão compor o sistema com seus respectivos atributos e métodos, bem como demonstrar como elas se relacionam, complementam
Leia maisClasses e Objetos INTRODUÇÃO À ORIENTAÇÃO A OBJETOS COM JAVA - MÓDULO II. Classes. Objetos. Um modelo para a criação de objetos
INTRODUÇÃO À ORIENTAÇÃO A OBJETOS COM JAVA - MÓDULO II Classes e Objetos Objetos Um conjunto de estados e comportamentos Classes Um modelo para a criação de objetos 1 Pacotes e Java API Pacotes Um conjunto
Leia maisModelo Conceitual Parte 1 Banco de Dados I Prof. Luiz Antônio Vivacqua C. Meyer
Modelo Conceitual Parte 1 Banco de Dados I Prof. Luiz Antônio Vivacqua C. Meyer Introdução As funcionalidades de um SOO são realizadas internamente através de colaborações entre objetos. Externamente,
Leia maisA B Classe Genérica D A C. Classe Especializada. Classe Especializada. Características Herdadas
Herança e Polimorfismo Prof. Bruno Gomes bruno.gomes@ifrn.edu.br Programação Orientada a Objetos Revisando -Herança Estrutura Hierárquica e modular Projeção de classes genéricas que podem ser especializadas
Leia maisnome = n; cargo = c; salario = s; public void print() { System.out.println(nome cargo salario); public void aumento( double fator){
UNIVERSIDADE FEDERAL DE SANTA CATARINA - Departamento de Automação e Sistemas PROGRAMAÇÃO DE SISTEMAS AUTOMATIZADOS - 2016/2 - P2 Nome: ------------------------------------------------------------------------------------------------------
Leia maisOs diagramas de use case capturam os requisitos funcionais do sistema.
109/166 Diagramas de Classe Sumário Colaborações Orientação aos Objectos Diagramas de Classe I conceitos base Diagramas de Classe II conceitos avançados Relações conceitos avançados Diagramas de objectos
Leia maisRelacionamentos entre objetos
Programação Orientada a Objetos Relacionamentos entre objetos Associação, composição e agregação Construtores t e sobrecarga Variáveis de classe e de instância Reinaldo Gomes reinaldo@cefet-al.br Objetos
Leia maisRevisão Diagrama de classes Elementos do diagrama de classes Exemplo: Sistema de matrícula
Revisão Diagrama de classes Elementos do diagrama de classes Exemplo: Sistema de matrícula 1 Mostra um conjunto de classes e seus relacionamentos. É o diagrama central da modelagem orientada a objetos.
Leia maisBANCO DE DADOS I. Prof. Luiz Antônio Vivacqua C. Meyer
BANCO DE DADOS I Prof. Luiz Antônio Vivacqua C. Meyer Projeto de Banco de Dados Etapas do Desenvolvimento de um Projeto de Sistemas: 1. Levantamento de Requisitos a. Requisitos Funcionais b. Requisitos
Leia maisProgramação Orientada a Objetos JAVA - NETBEANS
Programação Orientada a Objetos JAVA - NETBEANS Agenda Programação Orientada a Objeto (POO) Conceitos sobre POO Pilares da POO Objeto Classe Construtores Troca de Mensagens Pilares da POO Encapsulamento
Leia maisInterfaces e Classes Abstratas
Interfaces e Classes Abstratas José Gustavo de Souza Paiva Problema Método obterarea()? Classes Abstratas Classes que funcionam como um molde Declarada com comando abstract Contém um ou mais métodos abstratos
Leia maisLinguagem de Programação Orientada a Objeto Polimorfismo, Classes Abstractas e Interfaces
Linguagem de Programação Orientada a Objeto Polimorfismo, Classes Abstractas e Interfaces Professora Sheila Cáceres Polimorfismo Polimorfismo Polimorfismo é a característica única de linguagens orientadas
Leia maisPOO29004 Programação Orientada a Objetos
POO29004 Programação Orientada a Objetos Herança Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br http://docente.ifsc.edu.br/mello/poo 11 de setembro
Leia maisAula 15 Modelagem de Classes de Análise. Análise de Sistemas Prof. Filipe Arantes Fernandes
Aula 15 Modelagem de Classes de Análise Análise de Sistemas Prof. Filipe Arantes Fernandes filipe.arantes@ifsudestemg.edu.br Outline O paradigma da OO Classes e objetos Mensagens O papel da abstração Encapsulamento
Leia maisDIAGRAMAS DE CLASSE UML
DIAGRAMAS DE CLASSE UML Projeto Detalhado de Software (PDS) Profa. Cynthia Pinheiro Antes de mais nada... Calendário de Reposições Aula 1: 27/10/2017, 8h-10h, Sala 8 Aula 2: A verificar Aula 3: A verificar
Leia maisModelagem Usando Orientação à Objetos (Programação Orientada a Objetos) Prof. Responsáveis Wagner Santos C. de Jesus
Curso Disciplina Linguagem de Programação II Curso Engenharia da Computação Modelagem Usando Orientação à Objetos (Programação Orientada a Objetos) Site : http://www1.univap.br/~wagner/ec.html Prof. Responsáveis
Leia maisAula 08 Relacionamento entre Objetos. Disciplina: Programação Estruturada e Orientada a Objetos Prof. Bruno Gomes
Aula 08 Relacionamento entre Objetos Disciplina: Programação Estruturada e Orientada a Objetos Prof. Bruno Gomes http://www.profbrunogomes.com.br/ Antes de Iniciar... Vamos aprender um pouco de modelagem
Leia maisAula 5 POO 1 Encapsulamento. Profa. Elaine Faria UFU
Aula 5 POO 1 Encapsulamento Profa. Elaine Faria UFU - 2019 Sobre o Material Agradecimentos Aos professores José Gustavo e Fabiano, por gentilmente terem cedido seus materiais. Os slides consistem de adaptações
Leia maisProgramação. Orientada a Objetos: Herança. Objetos. Relacionamento entre classes. Análise e Projeto Orientados a. Objetos
Programação Orientada a Objetos: Herança Alexandre César Muniz de Oliveira Análise e Projeto Orientados a Objetos A análise orientada a objetos Determina o que o sistema deve fazer: Quais os atores envolvidos?
Leia maisUML LINGUAGEM DE MODELAGEM UNIFICADA Diagrama de Classes
UML LINGUAGEM DE MODELAGEM UNIFICADA Diagrama de Classes O diagrama de classe é a essência de qualquer modelagem orientada a objeto. Ele tem por objetivo descrever, segundo uma visão estática, o escopo
Leia maisModelo do Mundo Real. Abstração. Interpretação
Modelo do Mundo Real Mundo Real Abstração Interpretação Sistema de Software Modelo Algoritmo Abstração: O modelo precisa capturar apenas as características do mundo real que são importantes para o sistema
Leia maisIntrodução ao Java. Prof. Herbert Rausch Fernandes
Introdução ao Java Prof. Herbert Rausch Fernandes Orientação a Objetos Programação Orientada por Objetos: é a construção de sistemas de software como uma coleção estruturada de implementações de tipos
Leia maisModelo Conceitual. Análise e Projeto de Sistemas Avançados. Aula 5. Allan Rodrigo Leite
Modelo Conceitual Análise e Projeto de Sistemas Avançados Aula 5 Allan Rodrigo Leite Modelo Conceitual Oferece uma visão das informações que são gerenciadas pelo sistema Representação e transformação da
Leia maisComputação II Orientação a Objetos
Computação II Orientação a Objetos Fabio Mascarenhas - 2016.2 http://www.dcc.ufrj.br/~fabiom/java Revisão Classes e Objetos Classes são uma das unidades básicas de um programa Java Usamos as classes para
Leia maisIntrodução à UML. Prof. Jesus José de Oliveira Neto
Introdução à UML Prof. Jesus José de Oliveira Neto UML Linguagem de Modelagem Unificada Linguagem visual utilizada para modelar softwares baseados no paradigma de orientação a objetos UML não é uma linguagem
Leia maisAula 10 POO 1 Classes Abstratas. Profa. Elaine Faria UFU
Aula 10 POO 1 Classes Abstratas Profa. Elaine Faria UFU - 2019 Problema Método obterarea()? Classes Abstratas Classes que funcionam como um molde Declarada com comando abstract Contém um ou mais métodos
Leia maisUML. Diagrama de Classe
UML Diagrama de Classe Em UML as classes são representadas por um retângulo dividido em três compartimentos: o compartimento de nome, que conterá apenas o nome da classe modelada, o de atributos, que possuirá
Leia maisPADRONIZAÇÃO 10. INTERFACES PADRONIZAÇÃO CONTRATOS
PADRONIZAÇÃO 10. INTERFACES No dia-a-dia lidamos com diversos aparelhos elétricos Diversas empresas fabricam aparelhos elétricos com plugues E se cada empresa decidisse por conta própria o formato dos
Leia maisUML. Diagrama de Classes
UML Diagrama de Classes Introdução A modelagem de objetos incorpora a estrutura estática de um sistema mostrando: os objetos pertencentes ao sistema os relacionamentos entre esses objetos os atributos
Leia maisUNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL SISTEMAS DE INFORMAÇÃO - CÂMPUS DE COXIM FUNDAMENTOS EM ORIENTAÇÃO A OBJETOS
Data final de entrega 16/09/2014, até às 23h59min Enviar o arquivo de respostas em formato PDF e o arquivozip com códigos fontes para o e-mail motafernandomaia@gmailcom, insira no assunto do e-mail [Lista
Leia maisLinguagens de Programação Aula 12
Linguagens de Programação Aula 12 Celso Olivete Júnior olivete@fct.unesp.br Na aula passada Implementando subprogramas 2 Na aula de hoje Suporte para a programação orientada a objetos 3 Roteiro Introdução
Leia maisModelagem de Processos
Modelagem de Processos Prof.: Fernando Ascani Itens Estruturais Classes Uma Classe é um conjunto de objetos que compartilham os mesmos atributos, operações e relacionamentos. É representada graficamente
Leia maisFundamentos de Orientação à objetos
Fundamentos de Orientação à objetos Prof. Gustavo Willam Pereira ENG10082 Programação II Créditos: Prof. Clayton Vieira Fraga Filho Objeto Um objeto, como um substantivo, pode ser uma pessoa, local ou
Leia mais