Unidade: sobrecarga, construtores e herança
|
|
- Luca Fontes Amado
- 7 Há anos
- Visualizações:
Transcrição
1 Unidade: sobrecarga, construtores e herança 0
2 Unidade: sobrecarga, construtores e herança Sobrecarga Sobrecarregar (do inglês overload) um método é criar mais métodos com o mesmo nome, porém com assinaturas diferentes. Os parâmetros podem se diferenciar em tipo e/ou em quantidade assim como o tipo de retorno. Ficará a cargo de o compilador escolher, de acordo com a lista de argumentos enviados, os métodos a serem executados. Vamos dar uma olhada no seguinte método da classe Util. Podemos notar no método acima que ele deve receber dois valores inteiros e o método irá imprimir na tela a resposta da soma. Para testar esse método podemos ter algo parecido com: No exemplo anterior a resposta impressa na tela será Soma=7. Agora imagine que precisamos fazer um método que some números reais e não números inteiros. Para o usuário seria muito mais intuitivo se apenas trocasse os números usando algo do tipo: 1
3 Porém isso não vai funcionar, pois nosso método soma está esperando 2 números inteiros e não 2 números reais como parâmetros, dando erro na compilação, exceto se criarmos outro método que seja capaz de receber números reais. A classe ficaria assim: Dessa forma temos agora o método soma sobrecarregado e a chamada com números reais vai funcionar também. Podemos também sobrecarregar novamente o método soma e querer somar Strings, o processo seria o mesmo e o método ficaria assim. Além disse, podemos trocar o número de parâmetros de entrada, por exemplo, somar 3 números. Olhe o método a seguir: Claro que as possibilidades são ilimitadas e a sobrecarga vai depender das necessidades de cada projeto de classe. Em Java muitos métodos já são sobrecarregados. Por exemplo, o próprio comando de imprimir que sempre 2
4 usamos System.out.println possui várias sobrecargas. Você pode passar como parâmetro um número inteiro, um número real ou mesmo uma String que ele consegue imprimir na tela o que passou. Isso quer dizer que existe um método println que recebe um int, outro que recebe um double, outro que recebe uma String além de outros tipos. Construtor Construtores são métodos que são invocados automaticamente quando um objeto é instanciado. São métodos que nunca retornam nada e não possuem tipo. Em Java, sempre tem o mesmo nome da classe a que pertence. Vamos pensar em uma classe Data que tenha como atributos privados o dia, mês e ano. Algo do tipo: 3
5 A classe Data mostrada anteriormente, quando instanciada, atribui zero aos seus atributos. Veja o exemplo: No exemplo mostrado, será impresso 0/0/0, pois não foram atribuídos valores para os atributos do objeto. Mas se quisermos que, ao instanciar um objeto ele seja criado com um valor padrão de 01/01/1970? Nesse caso podemos criar um construtor, que em Java tem o mesmo nome da classe, precisa ser público e não tem tipo de retorno. Veja a classe Data como ficou: Com isso, agora quando instanciamos qualquer objeto da classe data, se não colocarmos valor aos seus atributos eles receberão o valor padrão. Um construtor nada mais é que um método, assim como os outros, que também pode ser sobrecarregado. No caso de métodos que não tem retorno, podemos alterar somente os seus parâmetros. Veja uma sobrecarga de construtor na classe Data a seguir. 4
6 Em Java existe uma referência para a própria classe através da palavrachave this. Assim, no construtor ao invés de usar dia = d, podemos usar this.dia = d. Nesse caso, podemos até usar as mesmas variáveis no construtor, já que podemos diferenciar as variáveis dos atributos. Agora, quando instanciamos um objeto da classe Data, podemos optar por usar o construtor que não tem parâmetros ou o construtor que possui 3 parâmetros. Veja como fica: No exemplo anterior, será impresso 1/1/1970 na primeira data e 25/12/2010 na segunda. 5
7 Herança Vamos recordar o conceito de abstração. Abstração é a capacidade de capturar as informações relevantes para representar na forma de classes. Ela pode ser considerada como uma generalização que tem como função obter propriedades e comportamentos essenciais determinando o que é importante para representar os objetos. Figura 1 Modelo de Abstração / Especialização Na Figura 1 anterior, vemos que criando um modelo hierárquico para representar meios de transporte, subir na hierarquia significa que estamos generalizando, obtendo informações que são comuns a todos os itens do nível inferior. Por outro lado, cada vez que descemos na estrutura, estamos sendo mais específicos e detalhados. Herança é o mecanismo pelo qual as linguagens orientadas a objetos possam fazer com que classes herdem características de outras classes. Com a herança pode-se economizar tempo durante o desenvolvimento de um programa baseando novas classes em classes já testadas, assim reaproveitando componentes já prontos. Além disso, isso aumenta a capacidade de adaptação e manutenção de um sistema, visto que ao ajustar uma classe pai, todas as classes que a usam na herança serão ajustadas automaticamente. Ao criar uma classe, ao invés de criar atributos e métodos do zero, você pode aproveitar atributos e métodos de classes existentes e testadas. A classe existente é chamada de superclasse, classe pai ou classe base e a nova classe é chamada de subclasse, classe filha ou classe derivada. 6
8 Uma subclasse também pode ter novos atributos e métodos além dos herdados da superclasse, pois ela será mais específica do que a superclasse que é mais genérica. A superclasse proporciona a funcionalidade que é comum a todas as suas subclasses, enquanto que uma subclasse proporciona a funcionalidade adicional que especializa seu comportamento, conforme ilustrado na Figura 2. Figura 2 Exemplo de superclasse e subclasses Em um diagrama de classes, subclasses podem ser superclasses de outras classes. Veja na Figura 3 que a classe Pós-Graduação é subclasse de Curso Universitário, mas também é superclasse de Especialização e Extensão. Figura 3 Hierarquia de Classes Veja outro exemplo na Figura 4 de uma estrutura de herança com vários níveis. A classe Animal é a mais genérica de todas e temos um exemplo de instâncias para as últimas subclasses da estrutura. 7
9 Figura 4 Hierarquia de Classes Algumas linguagens OO permitem fazer herança múltipla como o C++, o que significa que uma subclasse pode herdar características de duas ou mais classes. Isso permite que uma classe agrupe atributos e métodos de várias classes, conforme ilustra a Figura 5. Figura 5 Herança Múltipla Java não possui herança múltipla, porém consegue simular esse comportamento através do uso de Interfaces que veremos na próxima unidade. 8
10 Figura 6 Diagrama de classe UML de herança Vamos usar como base o diagrama de classes UML da Figura 6 para aprendermos como programar em Java a herança de classes. Claro que devemos começar com a superclasse mais genérica (MembroUniversidade), que não diferencia de nada do que já usamos anteriormente. 9
11 Note na classe anterior que o comum é criar uma classe sempre com os atributos privados, um construtor padrão, ou seja, um construtor que não tenha parâmetros para iniciar seus atributos com um valor padrão, um construtor com parâmetros que receba valores para todos os atributos além dos métodos de acesso set e get. Vamos agora implementar a classe Aluno que herda todas as características de MembroUniversidade. O aluno terá nome e nascimento, portanto usar CTRL+C e CTRL+V não é mais uma prática desejável para programadores OO. Através do mecanismo de herança vamos criar a subclasse Aluno usando a palavra chave extends. Veja a classe abaixo: Quando colocamos extends MembroUniversidade na frente da classe Aluno estamos dizendo que essa classe passa a ser uma subclasse e herda todos os atributos e métodos da superclasse. Portanto, Aluno também terá os atributos nome e nascimento e os métodos do pai. Note que além dos atributos herdados, Aluno também tem seus próprios atributos (RGM e curso), portanto também seus métodos de acesso set e get. Agora notem que o construtor sem parâmetros possui um item novo 10
12 super(). A palavra chave super refere-se sempre à superclasse da classe que você se encontra. No exemplo, o comando super() está chamando o construtor da classe pai. Veja agora que o construtor com parâmetros possui 4 argumentos, pois Aluno herdou 2 do pai e possui 2 próprios, portanto, ele precisa mandar 2 para o pai com super(no, na) e atribuir os outros 2 aos seus atributos. Veja agora como fica a classe Bolsista que será subclasse de Aluno. Veja novamente que além dos atributos herdados de aluno, Bolsista agora tem mais um chamado valorbolsa com seus próprios métodos de acesso. Note também que o construtor com parâmetros possui 5 argumentos, pois herdou 4 de Aluno e possui 1 próprio. Os 4 herdados precisam ser enviados ao pai através do comando super(no, na, r, cur), que já sabemos que chamará o construtor da classe pai. Claro que as classes Funcionário e Professor podem ser desenvolvidas de maneira simular, mas a pergunta é, posso instanciar objetos de qualquer umas das classes do diagrama? Sim, claro. Todas as classes do diagrama UML da Figura 6 são chamadas classes concretas, ou seja, permitem criar objetos. Veremos na próxima unidade um tipo especial de classe chamada Classe Abstrata que serve apenas para 11
13 estruturar outras classes, mas não gera objetos. Veja como podemos instanciar objetos das classes criadas, usando o construtor padrão e o construtor com parâmetros. Imagine agora que uma nova política diga que para qualquer membro da universidade, não importa se é aluno, professor, bolsista ou funcionário, se não for dito a data de nascimento, usar um valor padrão de 01/01/1970. Para isso basta alterarmos o construtor padrão da classe MembroUniversidade e todas as outras classes herdarão essa característica, o que seria mais complicado se tivéssemos que alterar um por um. 12
14 Referências SINTES, Tony. (2002) Aprenda Programação Orientada a Objetos em 21 dias. 1 ed. São Paulo: Pearson Education do Brasil, 2002, v. 1. DEITEL, P.; DEITEL, H. (2010) Java Como Programar, 8 ed. São Paulo: Pearson Education do Brasil, HORSTMANN, C.S.; CORNELL, G. (2010) Core Java. 8 ed. São Paulo: Pearson Education do Brasil, 2010, v
15 14 Responsável pelo Conteúdo: Prof. Ms. Amilton Souza Martha Lattes: Revisão Textual: Profª. Ms. Rosemary Toffoli Campus Liberdade Rua Galvão Bueno, São Paulo SP Brasil Tel: (55 11)
Unidade: Classes Abstratas, Polimorfismo, Sobreposição e Interfaces
Unidade: Classes Abstratas, Polimorfismo, Sobreposição e Interfaces 0 Unidade: Classes Abstratas, Polimorfismo, Sobreposição e Interfaces Classes Abstratas À medida que você sobe na hierarquia de herança,
Leia maisUnidade: Introdução à POO (Programação Orientada a Objetos)
Unidade: Introdução à POO (Programação Orientada a Objetos) 0 Unidade: Introdução à POO (Programação Orientada a Objetos) Paradigmas de Programação Um paradigma de programação fornece (e determina) a visã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 maisJava First-Tier: Aplicações. Sobrecarga. Orientação a Objetos em Java (II) Sobrecarga de Construtores: Exemplo de Declaração
Java First-Tier: Aplicações Orientação a Objetos em Java (II) Grupo de Linguagens de Programação Departamento de Informática PUC-Rio Sobrecarga Um recurso usual em programação OO é o uso de sobrecarga
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 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 maisUNIDADE 5 Aplicação dos Conceitos de Orientação a Objetos
UNIDADE 5 Aplicação dos Conceitos de Orientação a Objetos Objetivo da Unidade*: Conhecer e aplicar os conceitos mais importantes associados a orientação a objetos. 5.1 Métodos e atributos estáticos Atributos
Leia maisAbstração e Herança Parte 6
Abstração e Parte 6 : O que é abstração? Podemos dizer abstração é generalização. Qual é a função da abstração? A função da abstração é capturar as propriedades e os comportamentos essenciais, como se
Leia maisEsta categoria mais geral, à qual cada objeto pertence, denominamos de classe; IFSC/POO + JAVA - prof. Herval Daminelli
Esta categoria mais geral, à qual cada objeto pertence, denominamos de classe; Tudo no mundo real pode ser representado por meio do conceito de "objeto": uma planta, uma mesa, uma pessoa, um sentimento,
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 Classes abstratas Até agora, usamos interfaces toda vez que queríamos representar algum conceito abstrato
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 maisProfessor Leonardo Cabral da Rocha Soares Lattes:
Professor Leonardo Cabral da Rocha Soares Lattes: http://lattes.cnpq.br/3184602538494393 A Herança, em programação orientada a objetos (POO), é a possibilidade de escrever novas classes partindo de classes
Leia maisConceitos de Programação Orientada a Objetos
Conceitos de Programação Orientada a Objetos Tatyana Bitencourt Com as técnicas de orientação a objeto, é possível obter resultados considerados impossíveis pensando de maneira estruturada. Como Java não
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 maisLÓGICA DE PROGRAMAÇÃO (JAVA) HERANÇA. Professor Carlos Muniz
LÓGICA DE PROGRAMAÇÃO (JAVA) Definição A herança é um princípio da POO que permite a criação de novas classes a partir de outras previamente criadas. Essas novas classes são chamadas de subclasses, ou
Leia maisLaboratório de programação II
Laboratório de programação II Herança e Polimorfismo Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Herança Mecanismo da Orientação a Objeto que permite criar novas classes aproveitando
Leia mais[Linguagem de Programação 3] [Aula 01] [Gustavo Yoshio Maruyama]
[Linguagem de Programação 3] [Aula 01] [Gustavo Yoshio Maruyama] Objetivos Revisar conceitos de Orientação a Objetos Classes Objetos Encapsulamento Herança Sobrescrita de métodos Sobrecarga de métodos
Leia maisProgramação de Computadores - I. Profª Beatriz Profº Israel
Programação de Computadores - I Profª Beatriz Profº Israel Ambiente de Desenvolvimento Herança É um princípio da Programação Orientada a Objetos que permite que as classes compartilhem atributos e métodos
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 maisNotas de Aula 04: Herança e polimorfismo.
Notas de Aula 04: Herança e polimorfismo. Objetivos da aula: Introduzir o conceito de Heranças Criar uma hierarquia de classes Rever o uso de modificadores de acesso. Apresentar o conceito de polimorfismo
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 maisAULA 16 HERANÇA. Disciplina: Programação Orientada a Objetos Professora: Alba Lopes
AULA 16 HERANÇA Disciplina: Programação Orientada a Objetos Professora: Alba Lopes alba.lopes@ifrn.edu.br REPETIÇÃO DE CÓDIGO Tomemos como exemplo a classe Funcionario, que representa o funcionário de
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 Federal de Uberlândia
Universidade Federal de Uberlândia Faculdade de Computação Disciplina: POO1 Prof. Fabiano Dorça Classes e métodos abstratos É impossível instanciar objetos a partir de classes abstratas. Classes abstratas
Leia maisLaboratório de Programação. Aula 2 Java 5COP088. Aula 2 Java Prof. Dr. Sylvio Barbon Junior. Sylvio Barbon Jr
5COP088 Laboratório de Programação Aula 2 Java Prof. Dr. Sylvio Barbon Junior Sylvio Barbon Jr barbon@uel.br 1 Aula 2 Orientação a Objetos 1) Discussão 2) Encapsulamento 3) Herança 4) Polimorfismo 5) Sobrescrita
Leia maisHerança. Prof. Fernando V. Paulovich 23 de agosto de 2010
Herança SCC0604 - Programação Orientada a Objetos Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências Matemáticas e de Computação(ICMC) Universidade
Leia maisProgramação Orientada a Objetos
Programação Orientada a Objetos Introdução Alguns conceitos importantes Orientação a Objetos Alguns conceitos importantes Programação Estruturada X Programação OO Classes Objetos Construtores e Destrutores
Leia maisDeclaração de Construtores em Java
Programando com Java Artigo http://mballem.wordpress.com/ Declaração de Construtores em Java Para que serve e como usar um Construtor em Java Autor Marcio Ballem: é formado em Sistemas de Informação e
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 Editor Gráfico Vamos usar nosso framework do Motor, com pequenas mudanças (para permitir interação com
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 maisLinguagem de Programação III
Linguagem de Programação III Aula-7 Reutilização de Classes Prof. Esbel Tomás Valero Orellana Até Aqui Introdução a POO e sua implementação em Java Atributos, métodos e encapsulamento dos mesmos Trabalhando
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 maisIntrodução a orientação a objetos
2 Introdução a orientação a objetos Introdução 2 Linguagens procedimentais 2 Um pouco de história 2 Idéias básicas da POO 2 Classe, atributo e método 2 Herança 3 Polimorfismo 3 Vantagens e desvantagens
Leia maisSEMINÁRIOS INTEGRADOS EM ADS PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS
SEMINÁRIOS INTEGRADOS EM ADS PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS Prof. Dr. Daniel Caetano 2014-1 DISCUSSÃO Visão Geral dos Paradigmas Quais os paradigmas mais comuns? Do que é composto um programa
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 maisOrientação a Objetos (OO)
CURSO: Ciência da Computação DATA: / / 2013 PERÍODO: 4 o. PROFESSOR: Andrey DISCIPLINA: Técnicas Alternativas de Programação AULA: 04 APRESENTAÇÃO: Hoje vamos discutir os conceitos de Orientação a Objetos.
Leia maisIntrodução a classes e objetos. Prof. Marcelo Roberto Zorzan
Introdução a classes e objetos Prof. Marcelo Roberto Zorzan Herança Aula de Hoje Problema Considere uma empresa que tenha tipos de empregados no aplicativo de folha de pagamento Um empregado tem nome,
Leia maisCIÊNCIA DA COMPUTAÇÃO - LINGUAGEM DE PROGRAMAÇÃO II REVISÃO POO
REVISÃO POO INTRODUÇÃO À LINGUAGEM JAVA CRIANDO CLASSES EM JAVA Convenção de Nomes em Java Classes iniciam com letras maiúsculas Métodos, atributos e variáveis locais iniciam com minúsculas. Declaração
Leia maisHerança. Universidade Católica de Pernambuco Ciência da Computação. Prof. Márcio Bueno.
Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marciobueno.com Fonte: Material da Profª Karina Oliveira Possibilita o reuso de classes (código-fonte) Usar quando:
Leia maisAuto-Referenciamento e Herança
Auto-Referenciamento e Herança José Gustavo de Souza Paiva Auto-Referenciamento Ao criarmos o código de uma classe, ainda não sabemos quais serão seus objetos, e por isso não há como referenciá-los Utilizando
Leia maisInterfaces. Universidade Católica de Pernambuco Ciência da Computação. Prof. Márcio Bueno.
Interfaces Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marciobueno.com Fonte: Material da Profª Karina Oliveira Interfaces É utilizada para agrupar conceitos em
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 maisProgramação Orientada a Objetos
Programação Orientada a Objetos Herança e Polimorfismo Prof. Francisco de Assis S. Santos, Dr. São José, 2015. Herança em POO O conceito de herança torna mais rápido o desenvolvimento de softwares complexos
Leia maisVejamos o seguinte exemplo public class Exemplo private int testada = 20; public void testapalavra(int testada) JOptionPane.showMessageDialog(null,"Pa
Palavra reservada this Em Java podemos ter um parâmetro de um método e um atributo de uma classe com o mesmo nome. Caso façamos uma referência a esta variável, pelo princípio da localidade estaremos referenciando
Leia maisA programação orientada a objetos tenta simular estes aspectos, trazendo para o computador a realidade do dia-a-dia.
Introdução A orientação a objetos é uma maneira de programar que trata de modelar os processos de programação de uma maneira próxima à linguagem humana: tratando componentes de um programa como um objeto
Leia maisCapítulo 2. Orientação a Objetos
Capítulo 2 Orientação a Objetos Princípios da Orientação a Objetos Os princípios da orientação a objetos afetam todo o processo de desenvolvimento de software: Seres humanos pensam em termos de substantivos
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 maisLaboratório de Programação. Aula 2 Java 5COP088. Aula 2 Java Prof. Dr. Sylvio Barbon Junior. Sylvio Barbon Jr
5COP088 Laboratório de Programação Aula 2 Java Prof. Dr. Sylvio Barbon Junior Sylvio Barbon Jr barbon@uel.br 1 Aula 2 Orientação a Objetos 1) Discussão 2) Encapsulamento 3) Herança 4) Polimorfismo 5) Sobrescrita
Leia maisCURSO DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS Disciplina: Programação Orientada a Objetos
01.Em orientação a objetos, o conceito que determina que as classes devem cuidar dos seus atributos de forma exclusiva, expondo o mínimo possível de suas funcionalidades para outras classes, é a)herança
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 maisProgramação Orientada a Objectos - P. Prata, P. Fazendeiro. Hierarquia de classes e mecanismo de ligação
4 Conceito de Herança Hierarquia de classes e mecanismo de ligação Herança Uma classe pode herdar operações de uma superclasse e as suas operações podem ser herdadas por subclasses. O mecanismo de herança
Leia maisAula 9 POO 1 Polimorfismo. Profa. Elaine Faria UFU
Aula 9 POO 1 Polimorfismo Profa. Elaine Faria UFU - 2019 Sobrecarga de Métodos Numa mesma classe, dois ou mais métodos podem ter o mesmo nome Desde que tenham tipos, quantidade e/ou ordem de parâmetros
Leia maisCOMPORTAMENTOS - Observações
COMPORTAMENTOS - Observações O próprio objeto realiza operações de consulta ou alteração dos valores dos seus atributos Essas operações são definidas em seus métodos Os métodos também são utilizados para
Leia maisProgramação Orienta a Objetos
Programação Orienta a Objetos Linguagem de Programação 1 Os atores principais do paradigma de projetos orientados a objetos são chamados de objetos. Um objeto se origina de uma classe, que é uma especificação
Leia maisProgramação Java (nível intermediário) 4. Polimorfismo
Programação Java (nível intermediário) 4 Polimorfismo Introdução Uma linguagem orientada a objetos nos permite definir novos tipos para variáveis Nós definimos um novo tipo através de uma classe Este tipo
Leia maisHerança Sendo uma linguagem orientada a objetos Java oferece mecanismos para definir classes derivadas a partir de classes existentes; As classes deri
Herança Forma de reutilização de software Encapsular estrutura e comportamento em um tipo não é um conceito exclusivo da orientação a objetos, pois já era usado na programação de tipos abstratos. O que
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 maisC com introdução a OO
... Centro Integrado de Tecnologia da Informação C com introdução a OO ... Centro Integrado de Tecnologia da Informação Aula 9 Ronald Dener - Instrutor Matheus Soares - Monitor 17 / outubro 17 / outubro
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 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 maisPolimorfismo. O que é polimorfismo?
O que é polimorfismo? Polimorfismo Significa que variáveis podem referenciar mais do que um tipo. Não é um conceito novo e várias linguagens de programação aplicam. Funções são polimórficas quando seus
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 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 maisSobrecarga, Sobreposição e Polimorfismo
Sobrecarga, Sobreposição e Polimorfismo José Gustavo de Souza Paiva Sobrecarga de Métodos Numa mesma classe, dois ou mais métodos podem ter o mesmo nome Desde que tenham tipos, quantidade e/ou ordem de
Leia maisProgramação Orientada a Objectos - P. Prata, P. Fazendeiro
9 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 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 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 I Apresentação da Disciplina
Linguagem de Programação I Apresentação da Disciplina Apresentação da Disciplina Conteúdo: 1) Orientação a Objetos - Características da OO - Reutilização de código 2) Introdução à Linguagem Java - Histórico
Leia maisPython Orientação a Objetos. Introdução à Programação SI2
Python Orientação a Objetos Introdução à Programação SI2 Herança Pessoa Aluno Professor Herança Animal Mamifero Ave Cachorro Gato Gavião Galinha Herança Uma classe pode herdar a definição de outra classe:
Leia maisAula 9 Herança. Prof. Jefersson Alex dos Santos
Aula 9 Herança Prof. Jefersson Alex dos Santos Roteiro Introdução Conversão de tipo explícita (Cast) Acesso Protegido A classe Object A classe Class Reflexão Recomendações de Projeto Herança Técnica necessária
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 maisHerança. Fátima L. S. Nunes Luciano A. Digiampietri Norton T. Roman SISTEMAS DE INFORMAÇÃO 1
Herança Fátima L. S. Nunes Luciano A. Digiampietri Norton T. Roman 1 1 1 Motivação Você está desenvolvendo um sistema de gerenciamento de pessoal para a USP Precisa fazer: Cadastro de alunos e professores
Leia maisOrientação a Objetos (OO) LPG II - Java. Orientação a Objetos (OO) Programação Orientada a Objetos. Programação Procedimental
Orientação a Objetos (OO) LPG II - Java Orientação a Objetos (OO) Roberto Vedoato vedoato@joinville.udesc.br Programação Procedimental x Orientada a Objetos Objetivos e Benefícios da Orientação a Objetos
Leia maisAULA 8 Polimorfismo de: coerção, overloading, inclusão e paramétrico Prof. Dr. Fernando Henrique Campos
Câmpus Santa Helena Curso: Ciência da Computação Disciplina: Programação Orientada a Objetos AULA 8 Polimorfismo de: coerção, overloading, inclusão e paramétrico Prof. Dr. Fernando Henrique Campos Tema
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 maisDesenvolvimento Web II
Desenvolvimento Web II Linguagem PHP PHP Orientado a Objeto / Banco de Dados (PDO) https://secure.php.net/manual/pt_br/ Gil Eduardo de Andrade PHP Orientado a Objeto O PHP é uma linguagem de script que
Leia maisFundamentos Básicos da linguagem Java (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 Fundamentos Básicos da linguagem Java (Programação Orientada a Objetos) Site : http://www1.univap.br/~wagner/ec.html Prof. Responsáveis
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 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 maisDesenvolvimento Web TCC-00.226 Turma A-1
Desenvolvimento Web TCC-00.226 Turma A-1 Conteúdo Orientação a Objetos Professor Leandro Augusto Frata Fernandes laffernandes@ic.uff.br Material disponível em http://www.ic.uff.br/~laffernandes/teaching/2013.2/tcc-00.226
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 em Java
Programação Orientada a Objetos em Java Conceitos: Classe, Variável de Instância ou Atributos, Métodos, Objeto, Variáveis Estáticas ou de Classe, Construtores, Construtores Sobrecarregados, Herança, Polimorfismo,
Leia mais9 Classes Abstractas e Interfaces
9 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 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 mais4 Conceito de Herança
4 Conceito de Herança Hierarquia de classes e mecanismo de ligação Herança Uma classe pode herdar operações de uma superclasse e as suas operações podem ser herdadas por subclasses. O mecanismo de herança
Leia maisLinguagem de programação Programação Orientada a objetos
Instituto Federal de Minas Gerais Campus Ponte Nova Linguagem de programação Programação Orientada a objetos Professor: Saulo Henrique Cabral Silva Paradigma da orientação a objetos Paradigma = forma de
Leia maisIntrodução. Extends e Super. Exercício Prático 5 Herança. Nome:
Universidade Estadual da Paraíba Campus VII Gov. Antônio Mariz CCEA Centro de Ciências Exatas e Sociais Aplicadas Licenciatura em Computação Java - Noturno Exercício Prático 5 Herança Nome: Introdução
Leia maisAdministração Central 2019 São Paulo
2019 São Paulo Material Didático sobre Robocode 1 Conceitos básicos sobre as técnicas de Orientação a Objetos Para que possamos utilizar o Robocode para construção do nosso Robô, usaremos a linguagem de
Leia maisLinguagem de Programação III
Linguagem de Programação III Aula-6 Reutilização de Classes Prof. Esbel Tomás Valero Orellana Até Aqui Introdução a POO e sua implementação em Java Atributos, métodos e encapsulamento dos mesmos Trabalhando
Leia maisAula 7 POO 1 Herança. Profa. Elaine Faria UFU
Aula 7 POO 1 Herança Profa. Elaine Faria UFU - 2019 Problema Problema As classes Funcionário e Estudante compartilham alguns atributos, mas não todos Não é possível utilizar uma classe para representar
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 maisLinguagem de Programação Orientada a Objeto Construtores e Sobrecarga
Linguagem de Programação Orientada a Objeto Construtores e Sobrecarga Professora Sheila Cáceres Sobrecarga (overloading) Na mesma classe podemos definir vários métodos com o mesmo nome Sobrecarga O tipo
Leia maisProgramação Orientada a Objetos - 3º semestre AULA 09 Prof. André Moraes. A descrição UML da classe simpledotcom
Pág 63 Programação Orientada a Objetos - 3º semestre AULA 09 Prof. André Moraes 14.3 ANALISANDO O CÓDIGO DO JOGO DE BATALHA NAVAL O jogo da batalha naval utilizou vários recursos interessantes que devem
Leia maisProgramação Orientada a Objetos
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
Leia mais