SlideShare uma empresa Scribd logo
Programação Orientada a
Objetos
Professor Eng. Ms. Will Roger Pereira
1
Conteúdo
 Herança;
 Programando relacionamentos interclasse:
Generalização;
 Reescrita de métodos.
2
Problematização - Banco
 Imagine diversos serviços criados em um banco;
 Criar uma classe para cada serviço torna o sistema mais
flexível, pois qualquer alteração em um determinado serviço
não causará efeitos colaterais nos outros;
 Mas, por outro lado, essas classes teriam bastante código
repetido, contrariando a ideia do DRY(Don’t repeat yourself);
 Além disso, qualquer alteração que deva ser realizada em
todos os serviços precisa ser implementada em cada uma
das classes.
3
Herança
 A ideia é reutilizar o código de uma determinada classe em
outras classes.
 Aplicando herança:
 Teríamos a classe Servico com os atributos e métodos que
todos os serviços comuns;
 Uma classe para cada serviço com os atributos e métodos
específicos do determinado serviço.
 Como funciona:
 As classes específicas seriam “ligadas” de alguma forma à
classe Servico para reaproveitar o código nela definido.
4
Herança
5
Herança
6
Herança
7
Herança
 Uma relação entre duas classes;
 A classe genérica é chamada de super classe, classe base
ou classe mãe;
 As classes específicas são chamadas de sub classes,
classes derivadas ou classes filhas.
 Significa que “toda classe específica é uma especialização de
classe genérica”;
 Lê-se “toda subclasse é uma superclasse”.
8
Relacionamento - Generalização
 Uma seta triangular de ponta branca liga as duas classes;
 O alvo da seta é a classe superclasse;
 A fonte da seta é uma classe subclasse.
9
subclasse subclasse
superclasse
Herança em Java
 No Java, não é possível que uma subclasse possua duas
superclasses! Não existe herança múltipla.
 Superclasse:
 Nela estarão todos os métodos e atributos comuns às classes
específicas.
 Subclasse:
 A subclasse possui tudo que a superclasse possui, acrescido de
suas especialidades;
10
Subclasse
 As classes específicas são vinculadas a classe genérica
utilizando o comando extends;
 No construtor da subclasse, antes de qualquer ação, é
necessário construir a superclasse utilizando
super(argumentos);
 Para utilizar uma variável ou invocar um método da classe
mãe é utilizada a palavra reservada super (analogamente ao
this).
11
Subclasse
 Como a subclasse herda tudo o que é da superclasse, ou
seja, a superclasse passa a compor a subclasse;
 Não é necessário redefinir o conteúdo já declarado na classe
genérica;
 Assim sendo, this funcionará tanto para elementos da
superclasse quanto da subclasse;
 Quando houver ambiguidade: Utilize o super para se referir a
superclasse e this para se referir a subclasse.
12
Herança:Programando
 Tudo o que estiver em comum na Secretaria e no Gerente irá
na classe Funcionario;
 Suas características e ações específicas irão na sua própria
classe;
 Nos construtores das subclasses, sempre construa a
superclasse!  super(argumentos).
13
Secretaria Gerente
Funcionario
Herança:Programando
14
Herança:Programando
15
Reescrita de Métodos
 Sempre envolverá herança;
 Suponha um método em uma superclasse;
 A subclasse herdará este método, e ele fará parte dela;
 Porém, se este mesmo método tiver outra funcionalidade na
subclasse, é necessário reescrevê-lo.
16
Reescrita de Métodos
 Reescrita de método é definir um método na subclasse, com
mesma assinatura, ou seja, idêntico, que já foi definido na
superclasse.
 LEMBRE-SE DA AMBIGUIDADE!
 Quando houver ambiguidade: Utilize o super para se referir a
superclasse e this para se referir a subclasse.
17
Reescrita de Métodos
18
Reescrita de Métodos
19
Reescrita de Métodos
 Outros exemplos:
 Saudação diferente entre uma Pessoa suas especialidades;
 Bonificações diferentes para Funcionario e Gerente;
 Taxas diferentes para Conta e ContaPoupanca;
 Remuneração diferente entre um Professor e um
ProfessorHorista.
20

Mais conteúdo relacionado

Mais procurados

Banco de Dados I Aula 06 - Generalização e Especialização
Banco de Dados I Aula 06 - Generalização e EspecializaçãoBanco de Dados I Aula 06 - Generalização e Especialização
Banco de Dados I Aula 06 - Generalização e Especialização
Leinylson Fontinele
 
Virtualização
VirtualizaçãoVirtualização
Virtualização
Wellington Oliveira
 
Conceitos básicos de programação orientada a objetos
Conceitos básicos de programação orientada a objetosConceitos básicos de programação orientada a objetos
Conceitos básicos de programação orientada a objetos
Leonardo Melo Santos
 
Aula 5 - Modelo de Entidade e Relacionamento - MER
Aula 5 - Modelo de Entidade e Relacionamento - MER Aula 5 - Modelo de Entidade e Relacionamento - MER
Aula 5 - Modelo de Entidade e Relacionamento - MER
Vitor Hugo Melo Araújo
 
POO - Aula 09 - Herança
POO - Aula 09 - HerançaPOO - Aula 09 - Herança
POO - Aula 09 - Herança
Felipe J. R. Vieira
 
Introdução à Virtualização
Introdução à VirtualizaçãoIntrodução à Virtualização
Introdução à Virtualização
Lucas Miranda
 
Java: Heranca e polimorfismo
Java: Heranca e polimorfismoJava: Heranca e polimorfismo
Java: Heranca e polimorfismo
Arthur Emanuel
 
JAVA - Herança
JAVA - HerançaJAVA - Herança
JAVA - Herança
Elaine Cecília Gatto
 
Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)
Daniel Brandão
 
Modelagem de Dados
Modelagem de DadosModelagem de Dados
Modelagem de Dados
Roberto Grande
 
POO - 13 - Arrays em Java
POO - 13 - Arrays em JavaPOO - 13 - Arrays em Java
POO - 13 - Arrays em Java
Ludimila Monjardim Casagrande
 
Programação orientada a objetos
Programação orientada a objetosProgramação orientada a objetos
Programação orientada a objetos
Cleyton Ferrari
 
Modelagem de dados
Modelagem de dados Modelagem de dados
Modelagem de dados
Fábio Ferreira
 
Aula 9 banco de dados
Aula 9   banco de dadosAula 9   banco de dados
Aula 9 banco de dados
Jorge Ávila Miranda
 
Aula 09 - introducao oo
Aula 09 - introducao ooAula 09 - introducao oo
Aula 09 - introducao oo
Moacir Jóse Ferreira Junior Ferreira
 
Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)
Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)
Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)
Leinylson Fontinele
 
Introdução ao MySQL
Introdução ao MySQLIntrodução ao MySQL
Introdução ao MySQL
Anderson Sanches
 
Aula 06 - Diagrama de classes
Aula 06 - Diagrama de classesAula 06 - Diagrama de classes
Aula 06 - Diagrama de classes
Leinylson Fontinele
 
POO - 17 - Interfaces
POO - 17 - InterfacesPOO - 17 - Interfaces
POO - 17 - Interfaces
Ludimila Monjardim Casagrande
 
POO - 11 - Prática de Herança
POO - 11 - Prática de HerançaPOO - 11 - Prática de Herança
POO - 11 - Prática de Herança
Ludimila Monjardim Casagrande
 

Mais procurados (20)

Banco de Dados I Aula 06 - Generalização e Especialização
Banco de Dados I Aula 06 - Generalização e EspecializaçãoBanco de Dados I Aula 06 - Generalização e Especialização
Banco de Dados I Aula 06 - Generalização e Especialização
 
Virtualização
VirtualizaçãoVirtualização
Virtualização
 
Conceitos básicos de programação orientada a objetos
Conceitos básicos de programação orientada a objetosConceitos básicos de programação orientada a objetos
Conceitos básicos de programação orientada a objetos
 
Aula 5 - Modelo de Entidade e Relacionamento - MER
Aula 5 - Modelo de Entidade e Relacionamento - MER Aula 5 - Modelo de Entidade e Relacionamento - MER
Aula 5 - Modelo de Entidade e Relacionamento - MER
 
POO - Aula 09 - Herança
POO - Aula 09 - HerançaPOO - Aula 09 - Herança
POO - Aula 09 - Herança
 
Introdução à Virtualização
Introdução à VirtualizaçãoIntrodução à Virtualização
Introdução à Virtualização
 
Java: Heranca e polimorfismo
Java: Heranca e polimorfismoJava: Heranca e polimorfismo
Java: Heranca e polimorfismo
 
JAVA - Herança
JAVA - HerançaJAVA - Herança
JAVA - Herança
 
Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)
 
Modelagem de Dados
Modelagem de DadosModelagem de Dados
Modelagem de Dados
 
POO - 13 - Arrays em Java
POO - 13 - Arrays em JavaPOO - 13 - Arrays em Java
POO - 13 - Arrays em Java
 
Programação orientada a objetos
Programação orientada a objetosProgramação orientada a objetos
Programação orientada a objetos
 
Modelagem de dados
Modelagem de dados Modelagem de dados
Modelagem de dados
 
Aula 9 banco de dados
Aula 9   banco de dadosAula 9   banco de dados
Aula 9 banco de dados
 
Aula 09 - introducao oo
Aula 09 - introducao ooAula 09 - introducao oo
Aula 09 - introducao oo
 
Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)
Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)
Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)
 
Introdução ao MySQL
Introdução ao MySQLIntrodução ao MySQL
Introdução ao MySQL
 
Aula 06 - Diagrama de classes
Aula 06 - Diagrama de classesAula 06 - Diagrama de classes
Aula 06 - Diagrama de classes
 
POO - 17 - Interfaces
POO - 17 - InterfacesPOO - 17 - Interfaces
POO - 17 - Interfaces
 
POO - 11 - Prática de Herança
POO - 11 - Prática de HerançaPOO - 11 - Prática de Herança
POO - 11 - Prática de Herança
 

Destaque

POO Herança
POO HerançaPOO Herança
Curso Java #05 - Heranca, Polimorfismo e Classe abstratas
Curso Java #05 - Heranca, Polimorfismo e Classe abstratasCurso Java #05 - Heranca, Polimorfismo e Classe abstratas
Curso Java #05 - Heranca, Polimorfismo e Classe abstratas
Renato Sousa
 
POO - Unidade 1 (parte 2) - Orientação a Objetos com Java e UML (versão 4)
POO - Unidade 1 (parte 2) - Orientação a Objetos com Java e UML (versão 4)POO - Unidade 1 (parte 2) - Orientação a Objetos com Java e UML (versão 4)
POO - Unidade 1 (parte 2) - Orientação a Objetos com Java e UML (versão 4)
Marcello Thiry
 
Java - Aula 4 - Sobrecarga de construtores, UML e Herança
Java - Aula 4 - Sobrecarga de construtores, UML e HerançaJava - Aula 4 - Sobrecarga de construtores, UML e Herança
Java - Aula 4 - Sobrecarga de construtores, UML e Herança
Moises Omena
 
Java 09 Heranca Reescrita Polimorfismo
Java 09 Heranca Reescrita PolimorfismoJava 09 Heranca Reescrita Polimorfismo
Java 09 Heranca Reescrita Polimorfismo
Regis Magalhães
 
05 poo-ii
05   poo-ii05   poo-ii
05 poo-ii
Ialis Cavalcante
 
Aula 3.ppt
Aula 3.pptAula 3.ppt
Programação orientada a objetos: herança
Programação orientada a objetos: herançaProgramação orientada a objetos: herança
Programação orientada a objetos: herança
Ivan Ricarte
 
Herança e polimorfismo em Java
Herança e polimorfismo em Java Herança e polimorfismo em Java
Herança e polimorfismo em Java
Evandro Júnior
 
Linguagem Java - Conceitos e Técnicas
Linguagem Java - Conceitos e TécnicasLinguagem Java - Conceitos e Técnicas
Linguagem Java - Conceitos e Técnicas
Breno Vitorino
 

Destaque (10)

POO Herança
POO HerançaPOO Herança
POO Herança
 
Curso Java #05 - Heranca, Polimorfismo e Classe abstratas
Curso Java #05 - Heranca, Polimorfismo e Classe abstratasCurso Java #05 - Heranca, Polimorfismo e Classe abstratas
Curso Java #05 - Heranca, Polimorfismo e Classe abstratas
 
POO - Unidade 1 (parte 2) - Orientação a Objetos com Java e UML (versão 4)
POO - Unidade 1 (parte 2) - Orientação a Objetos com Java e UML (versão 4)POO - Unidade 1 (parte 2) - Orientação a Objetos com Java e UML (versão 4)
POO - Unidade 1 (parte 2) - Orientação a Objetos com Java e UML (versão 4)
 
Java - Aula 4 - Sobrecarga de construtores, UML e Herança
Java - Aula 4 - Sobrecarga de construtores, UML e HerançaJava - Aula 4 - Sobrecarga de construtores, UML e Herança
Java - Aula 4 - Sobrecarga de construtores, UML e Herança
 
Java 09 Heranca Reescrita Polimorfismo
Java 09 Heranca Reescrita PolimorfismoJava 09 Heranca Reescrita Polimorfismo
Java 09 Heranca Reescrita Polimorfismo
 
05 poo-ii
05   poo-ii05   poo-ii
05 poo-ii
 
Aula 3.ppt
Aula 3.pptAula 3.ppt
Aula 3.ppt
 
Programação orientada a objetos: herança
Programação orientada a objetos: herançaProgramação orientada a objetos: herança
Programação orientada a objetos: herança
 
Herança e polimorfismo em Java
Herança e polimorfismo em Java Herança e polimorfismo em Java
Herança e polimorfismo em Java
 
Linguagem Java - Conceitos e Técnicas
Linguagem Java - Conceitos e TécnicasLinguagem Java - Conceitos e Técnicas
Linguagem Java - Conceitos e Técnicas
 

Semelhante a HERANÇA - Programação Orientada a Objetos JAVA

Herança.pptx
Herança.pptxHerança.pptx
Herança.pptx
GiselleSantos60
 
Refatorações
RefatoraçõesRefatorações
Refatorações
Altamir Benkenstein
 
Aula Herança
Aula HerançaAula Herança
Aula Herança
Jorge Ávila Miranda
 
Padrão De Projeto Adapter
Padrão De Projeto AdapterPadrão De Projeto Adapter
Padrão De Projeto Adapter
Matheus Andrade
 
Padroes de Projeto
Padroes de ProjetoPadroes de Projeto
Padroes de Projeto
Cezar Vinícius
 
Orientação a Objetos no Delphi - Por onde começar (I)
Orientação a Objetos no Delphi - Por onde começar (I)Orientação a Objetos no Delphi - Por onde começar (I)
Orientação a Objetos no Delphi - Por onde começar (I)
Ryan Padilha
 
Princípio da da Substituição de Liskov
Princípio da  da Substituição de LiskovPrincípio da  da Substituição de Liskov
Princípio da da Substituição de Liskov
eliasor
 
Lsp — the liskov substitution principle
Lsp — the liskov substitution principleLsp — the liskov substitution principle
Lsp — the liskov substitution principle
eliasor
 
AULA DIA 22-2024 - PROGRAMACAO ORIENTADA A OBJETOS EM JAVA.pptx
AULA DIA 22-2024 - PROGRAMACAO ORIENTADA A OBJETOS EM JAVA.pptxAULA DIA 22-2024 - PROGRAMACAO ORIENTADA A OBJETOS EM JAVA.pptx
AULA DIA 22-2024 - PROGRAMACAO ORIENTADA A OBJETOS EM JAVA.pptx
AurelcioOliveira
 
Aula 1 5
Aula 1 5Aula 1 5
Aula 1 5
Aparicio Junior
 
Construção de Frameworks com Annotation e Reflection API em Java
Construção de Frameworks com Annotation e Reflection API em JavaConstrução de Frameworks com Annotation e Reflection API em Java
Construção de Frameworks com Annotation e Reflection API em Java
Fernando Camargo
 
Herança
HerançaHerança
Paradigma de orientação a objetos -
Paradigma de orientação a objetos - Paradigma de orientação a objetos -
Paradigma de orientação a objetos -
André Victor
 
Modelo de desenvolvimento de software em 3 camadas para Wordpress
Modelo de desenvolvimento de software em 3 camadas para WordpressModelo de desenvolvimento de software em 3 camadas para Wordpress
Modelo de desenvolvimento de software em 3 camadas para Wordpress
Laboratório de Políticas Públicas Participativas
 
Refatoração
RefatoraçãoRefatoração
Refatoração
Gerson Borges
 
Livro Código limpo: Classes
Livro Código limpo:  ClassesLivro Código limpo:  Classes
Livro Código limpo: Classes
Inael Rodrigues
 
Herança
HerançaHerança
Herança
Claudemir JOse
 
Java básico - Módulo 09: Introdução a programação orientada à objetos
Java básico - Módulo 09: Introdução a programação orientada à objetosJava básico - Módulo 09: Introdução a programação orientada à objetos
Java básico - Módulo 09: Introdução a programação orientada à objetos
Professor Samuel Ribeiro
 
05 - Sincronização de Threads - I
05 - Sincronização de Threads - I05 - Sincronização de Threads - I
05 - Sincronização de Threads - I
Fabio Moura Pereira
 
Herança
HerançaHerança

Semelhante a HERANÇA - Programação Orientada a Objetos JAVA (20)

Herança.pptx
Herança.pptxHerança.pptx
Herança.pptx
 
Refatorações
RefatoraçõesRefatorações
Refatorações
 
Aula Herança
Aula HerançaAula Herança
Aula Herança
 
Padrão De Projeto Adapter
Padrão De Projeto AdapterPadrão De Projeto Adapter
Padrão De Projeto Adapter
 
Padroes de Projeto
Padroes de ProjetoPadroes de Projeto
Padroes de Projeto
 
Orientação a Objetos no Delphi - Por onde começar (I)
Orientação a Objetos no Delphi - Por onde começar (I)Orientação a Objetos no Delphi - Por onde começar (I)
Orientação a Objetos no Delphi - Por onde começar (I)
 
Princípio da da Substituição de Liskov
Princípio da  da Substituição de LiskovPrincípio da  da Substituição de Liskov
Princípio da da Substituição de Liskov
 
Lsp — the liskov substitution principle
Lsp — the liskov substitution principleLsp — the liskov substitution principle
Lsp — the liskov substitution principle
 
AULA DIA 22-2024 - PROGRAMACAO ORIENTADA A OBJETOS EM JAVA.pptx
AULA DIA 22-2024 - PROGRAMACAO ORIENTADA A OBJETOS EM JAVA.pptxAULA DIA 22-2024 - PROGRAMACAO ORIENTADA A OBJETOS EM JAVA.pptx
AULA DIA 22-2024 - PROGRAMACAO ORIENTADA A OBJETOS EM JAVA.pptx
 
Aula 1 5
Aula 1 5Aula 1 5
Aula 1 5
 
Construção de Frameworks com Annotation e Reflection API em Java
Construção de Frameworks com Annotation e Reflection API em JavaConstrução de Frameworks com Annotation e Reflection API em Java
Construção de Frameworks com Annotation e Reflection API em Java
 
Herança
HerançaHerança
Herança
 
Paradigma de orientação a objetos -
Paradigma de orientação a objetos - Paradigma de orientação a objetos -
Paradigma de orientação a objetos -
 
Modelo de desenvolvimento de software em 3 camadas para Wordpress
Modelo de desenvolvimento de software em 3 camadas para WordpressModelo de desenvolvimento de software em 3 camadas para Wordpress
Modelo de desenvolvimento de software em 3 camadas para Wordpress
 
Refatoração
RefatoraçãoRefatoração
Refatoração
 
Livro Código limpo: Classes
Livro Código limpo:  ClassesLivro Código limpo:  Classes
Livro Código limpo: Classes
 
Herança
HerançaHerança
Herança
 
Java básico - Módulo 09: Introdução a programação orientada à objetos
Java básico - Módulo 09: Introdução a programação orientada à objetosJava básico - Módulo 09: Introdução a programação orientada à objetos
Java básico - Módulo 09: Introdução a programação orientada à objetos
 
05 - Sincronização de Threads - I
05 - Sincronização de Threads - I05 - Sincronização de Threads - I
05 - Sincronização de Threads - I
 
Herança
HerançaHerança
Herança
 

Mais de Aparicio Junior

Tips For the TOELF ITP
Tips For the TOELF ITPTips For the TOELF ITP
Tips For the TOELF ITP
Aparicio Junior
 
Mock test structure TOEFL ITP
Mock test structure TOEFL ITPMock test structure TOEFL ITP
Mock test structure TOEFL ITP
Aparicio Junior
 
Mock test reading TOEFL ITP
Mock test reading TOEFL ITPMock test reading TOEFL ITP
Mock test reading TOEFL ITP
Aparicio Junior
 
Mock Test Listening TOEFL ITP
Mock Test Listening TOEFL ITPMock Test Listening TOEFL ITP
Mock Test Listening TOEFL ITP
Aparicio Junior
 
General view of the TOEFL ITP
General view of the TOEFL ITPGeneral view of the TOEFL ITP
General view of the TOEFL ITP
Aparicio Junior
 
Banco de Dados - Junções Externas e internas
Banco de Dados - Junções Externas e internasBanco de Dados - Junções Externas e internas
Banco de Dados - Junções Externas e internas
Aparicio Junior
 
Lista 2 5
Lista 2 5Lista 2 5
Lista 2 5
Aparicio Junior
 
Aula sobre Programação Orientada a Objetos em Java
Aula sobre Programação Orientada a Objetos em JavaAula sobre Programação Orientada a Objetos em Java
Aula sobre Programação Orientada a Objetos em Java
Aparicio Junior
 
Lista 2 4
Lista 2 4Lista 2 4
Lista 2 4
Aparicio Junior
 
Aula Programação Orientada a Objetos em Java
Aula Programação Orientada a Objetos em JavaAula Programação Orientada a Objetos em Java
Aula Programação Orientada a Objetos em Java
Aparicio Junior
 
Estrutura de Dados - PILHAS
Estrutura de Dados - PILHASEstrutura de Dados - PILHAS
Estrutura de Dados - PILHAS
Aparicio Junior
 
Tutorial instalacão java
Tutorial instalacão javaTutorial instalacão java
Tutorial instalacão java
Aparicio Junior
 
Lista1 3 java
Lista1 3 javaLista1 3 java
Lista1 3 java
Aparicio Junior
 
Lista 2 2 java
Lista 2 2 javaLista 2 2 java
Lista 2 2 java
Aparicio Junior
 
Lista 2 1 java
Lista 2 1 javaLista 2 1 java
Lista 2 1 java
Aparicio Junior
 
Lista 1 9 java
Lista 1 9 javaLista 1 9 java
Lista 1 9 java
Aparicio Junior
 
Lista 1 8 java
Lista 1 8 javaLista 1 8 java
Lista 1 8 java
Aparicio Junior
 
Lista 1 7 java
Lista 1 7 javaLista 1 7 java
Lista 1 7 java
Aparicio Junior
 
Lista 1 6 java
Lista 1 6 javaLista 1 6 java
Lista 1 6 java
Aparicio Junior
 
Lista 1 5 java
Lista 1 5 javaLista 1 5 java
Lista 1 5 java
Aparicio Junior
 

Mais de Aparicio Junior (20)

Tips For the TOELF ITP
Tips For the TOELF ITPTips For the TOELF ITP
Tips For the TOELF ITP
 
Mock test structure TOEFL ITP
Mock test structure TOEFL ITPMock test structure TOEFL ITP
Mock test structure TOEFL ITP
 
Mock test reading TOEFL ITP
Mock test reading TOEFL ITPMock test reading TOEFL ITP
Mock test reading TOEFL ITP
 
Mock Test Listening TOEFL ITP
Mock Test Listening TOEFL ITPMock Test Listening TOEFL ITP
Mock Test Listening TOEFL ITP
 
General view of the TOEFL ITP
General view of the TOEFL ITPGeneral view of the TOEFL ITP
General view of the TOEFL ITP
 
Banco de Dados - Junções Externas e internas
Banco de Dados - Junções Externas e internasBanco de Dados - Junções Externas e internas
Banco de Dados - Junções Externas e internas
 
Lista 2 5
Lista 2 5Lista 2 5
Lista 2 5
 
Aula sobre Programação Orientada a Objetos em Java
Aula sobre Programação Orientada a Objetos em JavaAula sobre Programação Orientada a Objetos em Java
Aula sobre Programação Orientada a Objetos em Java
 
Lista 2 4
Lista 2 4Lista 2 4
Lista 2 4
 
Aula Programação Orientada a Objetos em Java
Aula Programação Orientada a Objetos em JavaAula Programação Orientada a Objetos em Java
Aula Programação Orientada a Objetos em Java
 
Estrutura de Dados - PILHAS
Estrutura de Dados - PILHASEstrutura de Dados - PILHAS
Estrutura de Dados - PILHAS
 
Tutorial instalacão java
Tutorial instalacão javaTutorial instalacão java
Tutorial instalacão java
 
Lista1 3 java
Lista1 3 javaLista1 3 java
Lista1 3 java
 
Lista 2 2 java
Lista 2 2 javaLista 2 2 java
Lista 2 2 java
 
Lista 2 1 java
Lista 2 1 javaLista 2 1 java
Lista 2 1 java
 
Lista 1 9 java
Lista 1 9 javaLista 1 9 java
Lista 1 9 java
 
Lista 1 8 java
Lista 1 8 javaLista 1 8 java
Lista 1 8 java
 
Lista 1 7 java
Lista 1 7 javaLista 1 7 java
Lista 1 7 java
 
Lista 1 6 java
Lista 1 6 javaLista 1 6 java
Lista 1 6 java
 
Lista 1 5 java
Lista 1 5 javaLista 1 5 java
Lista 1 5 java
 

Último

Slide para aplicação da AVAL. FLUÊNCIA.pptx
Slide para aplicação  da AVAL. FLUÊNCIA.pptxSlide para aplicação  da AVAL. FLUÊNCIA.pptx
Slide para aplicação da AVAL. FLUÊNCIA.pptx
LeilaVilasboas
 
Relatório de Atividades 2020 CENSIPAM.pdf
Relatório de Atividades 2020 CENSIPAM.pdfRelatório de Atividades 2020 CENSIPAM.pdf
Relatório de Atividades 2020 CENSIPAM.pdf
Falcão Brasil
 
Oficina de bases de dados - Dimensions.pdf
Oficina de bases de dados - Dimensions.pdfOficina de bases de dados - Dimensions.pdf
Oficina de bases de dados - Dimensions.pdf
beathrizalves131
 
EBOOK_HORA DO CONTO_O MONSTRO DAS CORES_ANGELINA & MÓNICA_22_23
EBOOK_HORA DO CONTO_O MONSTRO DAS CORES_ANGELINA & MÓNICA_22_23EBOOK_HORA DO CONTO_O MONSTRO DAS CORES_ANGELINA & MÓNICA_22_23
EBOOK_HORA DO CONTO_O MONSTRO DAS CORES_ANGELINA & MÓNICA_22_23
Sandra Pratas
 
Temática – Projeto para Empreendedores Locais
Temática – Projeto para Empreendedores LocaisTemática – Projeto para Empreendedores Locais
Temática – Projeto para Empreendedores Locais
Colaborar Educacional
 
farmacologia-segura-em-mapas-mentais-reduzindo-os-riscos-da-terapeutica-24040...
farmacologia-segura-em-mapas-mentais-reduzindo-os-riscos-da-terapeutica-24040...farmacologia-segura-em-mapas-mentais-reduzindo-os-riscos-da-terapeutica-24040...
farmacologia-segura-em-mapas-mentais-reduzindo-os-riscos-da-terapeutica-24040...
AngelicaCostaMeirele2
 
Slides Lição 3, CPAD, Rute e Noemi, Entrelaçadas pelo Amor.pptx
Slides Lição 3, CPAD, Rute e Noemi, Entrelaçadas pelo Amor.pptxSlides Lição 3, CPAD, Rute e Noemi, Entrelaçadas pelo Amor.pptx
Slides Lição 3, CPAD, Rute e Noemi, Entrelaçadas pelo Amor.pptx
LuizHenriquedeAlmeid6
 
Relatório de Atividades 2017 CENSIPAM.pdf
Relatório de Atividades 2017 CENSIPAM.pdfRelatório de Atividades 2017 CENSIPAM.pdf
Relatório de Atividades 2017 CENSIPAM.pdf
Falcão Brasil
 
Caderno 1 - Módulo Água JMS 2024 (1).pdf
Caderno 1 -  Módulo Água JMS 2024 (1).pdfCaderno 1 -  Módulo Água JMS 2024 (1).pdf
Caderno 1 - Módulo Água JMS 2024 (1).pdf
SupervisoEMAC
 
Alfabetização de adultos.pdf
Alfabetização de             adultos.pdfAlfabetização de             adultos.pdf
Alfabetização de adultos.pdf
arodatos81
 
Texto e atividade - O que fazemos com a água que usamos.
Texto e atividade -  O que fazemos com a água que usamos.Texto e atividade -  O que fazemos com a água que usamos.
Texto e atividade - O que fazemos com a água que usamos.
Mary Alvarenga
 
Oceano, Fonte de Vida e Beleza Maria Inês Aroeira Braga.ppsx
Oceano, Fonte de Vida e Beleza Maria Inês Aroeira Braga.ppsxOceano, Fonte de Vida e Beleza Maria Inês Aroeira Braga.ppsx
Oceano, Fonte de Vida e Beleza Maria Inês Aroeira Braga.ppsx
Luzia Gabriele
 
A perspectiva colaborativa e as novas práticas de inclusão. (1).pptx
A perspectiva colaborativa e as novas práticas de inclusão. (1).pptxA perspectiva colaborativa e as novas práticas de inclusão. (1).pptx
A perspectiva colaborativa e as novas práticas de inclusão. (1).pptx
marcos oliveira
 
Relatório de Atividades 2009 CENSIPAM
Relatório de Atividades 2009 CENSIPAM Relatório de Atividades 2009 CENSIPAM
Relatório de Atividades 2009 CENSIPAM
Falcão Brasil
 
IV Jornada Nacional Tableau - Apresentações.pptx
IV Jornada Nacional Tableau - Apresentações.pptxIV Jornada Nacional Tableau - Apresentações.pptx
IV Jornada Nacional Tableau - Apresentações.pptx
Ligia Galvão
 
escrita criativa utilizada na arteterapia
escrita criativa   utilizada na arteterapiaescrita criativa   utilizada na arteterapia
escrita criativa utilizada na arteterapia
shirleisousa9166
 
Relatório de Atividades 2019 CENSIPAM.pdf
Relatório de Atividades 2019 CENSIPAM.pdfRelatório de Atividades 2019 CENSIPAM.pdf
Relatório de Atividades 2019 CENSIPAM.pdf
Falcão Brasil
 
oficia de construção de recursos para aluno DI.pdf
oficia de construção de recursos para aluno DI.pdfoficia de construção de recursos para aluno DI.pdf
oficia de construção de recursos para aluno DI.pdf
marcos oliveira
 
A experiência do professor. Publicado EM 08.07.2024
A experiência do professor. Publicado EM 08.07.2024A experiência do professor. Publicado EM 08.07.2024
A experiência do professor. Publicado EM 08.07.2024
Espanhol Online
 

Último (20)

Slide para aplicação da AVAL. FLUÊNCIA.pptx
Slide para aplicação  da AVAL. FLUÊNCIA.pptxSlide para aplicação  da AVAL. FLUÊNCIA.pptx
Slide para aplicação da AVAL. FLUÊNCIA.pptx
 
Relatório de Atividades 2020 CENSIPAM.pdf
Relatório de Atividades 2020 CENSIPAM.pdfRelatório de Atividades 2020 CENSIPAM.pdf
Relatório de Atividades 2020 CENSIPAM.pdf
 
Oficina de bases de dados - Dimensions.pdf
Oficina de bases de dados - Dimensions.pdfOficina de bases de dados - Dimensions.pdf
Oficina de bases de dados - Dimensions.pdf
 
TALENTOS DA NOSSA ESCOLA .
TALENTOS DA NOSSA ESCOLA                .TALENTOS DA NOSSA ESCOLA                .
TALENTOS DA NOSSA ESCOLA .
 
EBOOK_HORA DO CONTO_O MONSTRO DAS CORES_ANGELINA & MÓNICA_22_23
EBOOK_HORA DO CONTO_O MONSTRO DAS CORES_ANGELINA & MÓNICA_22_23EBOOK_HORA DO CONTO_O MONSTRO DAS CORES_ANGELINA & MÓNICA_22_23
EBOOK_HORA DO CONTO_O MONSTRO DAS CORES_ANGELINA & MÓNICA_22_23
 
Temática – Projeto para Empreendedores Locais
Temática – Projeto para Empreendedores LocaisTemática – Projeto para Empreendedores Locais
Temática – Projeto para Empreendedores Locais
 
farmacologia-segura-em-mapas-mentais-reduzindo-os-riscos-da-terapeutica-24040...
farmacologia-segura-em-mapas-mentais-reduzindo-os-riscos-da-terapeutica-24040...farmacologia-segura-em-mapas-mentais-reduzindo-os-riscos-da-terapeutica-24040...
farmacologia-segura-em-mapas-mentais-reduzindo-os-riscos-da-terapeutica-24040...
 
Slides Lição 3, CPAD, Rute e Noemi, Entrelaçadas pelo Amor.pptx
Slides Lição 3, CPAD, Rute e Noemi, Entrelaçadas pelo Amor.pptxSlides Lição 3, CPAD, Rute e Noemi, Entrelaçadas pelo Amor.pptx
Slides Lição 3, CPAD, Rute e Noemi, Entrelaçadas pelo Amor.pptx
 
Relatório de Atividades 2017 CENSIPAM.pdf
Relatório de Atividades 2017 CENSIPAM.pdfRelatório de Atividades 2017 CENSIPAM.pdf
Relatório de Atividades 2017 CENSIPAM.pdf
 
Caderno 1 - Módulo Água JMS 2024 (1).pdf
Caderno 1 -  Módulo Água JMS 2024 (1).pdfCaderno 1 -  Módulo Água JMS 2024 (1).pdf
Caderno 1 - Módulo Água JMS 2024 (1).pdf
 
Alfabetização de adultos.pdf
Alfabetização de             adultos.pdfAlfabetização de             adultos.pdf
Alfabetização de adultos.pdf
 
Texto e atividade - O que fazemos com a água que usamos.
Texto e atividade -  O que fazemos com a água que usamos.Texto e atividade -  O que fazemos com a água que usamos.
Texto e atividade - O que fazemos com a água que usamos.
 
Oceano, Fonte de Vida e Beleza Maria Inês Aroeira Braga.ppsx
Oceano, Fonte de Vida e Beleza Maria Inês Aroeira Braga.ppsxOceano, Fonte de Vida e Beleza Maria Inês Aroeira Braga.ppsx
Oceano, Fonte de Vida e Beleza Maria Inês Aroeira Braga.ppsx
 
A perspectiva colaborativa e as novas práticas de inclusão. (1).pptx
A perspectiva colaborativa e as novas práticas de inclusão. (1).pptxA perspectiva colaborativa e as novas práticas de inclusão. (1).pptx
A perspectiva colaborativa e as novas práticas de inclusão. (1).pptx
 
Relatório de Atividades 2009 CENSIPAM
Relatório de Atividades 2009 CENSIPAM Relatório de Atividades 2009 CENSIPAM
Relatório de Atividades 2009 CENSIPAM
 
IV Jornada Nacional Tableau - Apresentações.pptx
IV Jornada Nacional Tableau - Apresentações.pptxIV Jornada Nacional Tableau - Apresentações.pptx
IV Jornada Nacional Tableau - Apresentações.pptx
 
escrita criativa utilizada na arteterapia
escrita criativa   utilizada na arteterapiaescrita criativa   utilizada na arteterapia
escrita criativa utilizada na arteterapia
 
Relatório de Atividades 2019 CENSIPAM.pdf
Relatório de Atividades 2019 CENSIPAM.pdfRelatório de Atividades 2019 CENSIPAM.pdf
Relatório de Atividades 2019 CENSIPAM.pdf
 
oficia de construção de recursos para aluno DI.pdf
oficia de construção de recursos para aluno DI.pdfoficia de construção de recursos para aluno DI.pdf
oficia de construção de recursos para aluno DI.pdf
 
A experiência do professor. Publicado EM 08.07.2024
A experiência do professor. Publicado EM 08.07.2024A experiência do professor. Publicado EM 08.07.2024
A experiência do professor. Publicado EM 08.07.2024
 

HERANÇA - Programação Orientada a Objetos JAVA

  • 1. Programação Orientada a Objetos Professor Eng. Ms. Will Roger Pereira 1
  • 2. Conteúdo  Herança;  Programando relacionamentos interclasse: Generalização;  Reescrita de métodos. 2
  • 3. Problematização - Banco  Imagine diversos serviços criados em um banco;  Criar uma classe para cada serviço torna o sistema mais flexível, pois qualquer alteração em um determinado serviço não causará efeitos colaterais nos outros;  Mas, por outro lado, essas classes teriam bastante código repetido, contrariando a ideia do DRY(Don’t repeat yourself);  Além disso, qualquer alteração que deva ser realizada em todos os serviços precisa ser implementada em cada uma das classes. 3
  • 4. Herança  A ideia é reutilizar o código de uma determinada classe em outras classes.  Aplicando herança:  Teríamos a classe Servico com os atributos e métodos que todos os serviços comuns;  Uma classe para cada serviço com os atributos e métodos específicos do determinado serviço.  Como funciona:  As classes específicas seriam “ligadas” de alguma forma à classe Servico para reaproveitar o código nela definido. 4
  • 8. Herança  Uma relação entre duas classes;  A classe genérica é chamada de super classe, classe base ou classe mãe;  As classes específicas são chamadas de sub classes, classes derivadas ou classes filhas.  Significa que “toda classe específica é uma especialização de classe genérica”;  Lê-se “toda subclasse é uma superclasse”. 8
  • 9. Relacionamento - Generalização  Uma seta triangular de ponta branca liga as duas classes;  O alvo da seta é a classe superclasse;  A fonte da seta é uma classe subclasse. 9 subclasse subclasse superclasse
  • 10. Herança em Java  No Java, não é possível que uma subclasse possua duas superclasses! Não existe herança múltipla.  Superclasse:  Nela estarão todos os métodos e atributos comuns às classes específicas.  Subclasse:  A subclasse possui tudo que a superclasse possui, acrescido de suas especialidades; 10
  • 11. Subclasse  As classes específicas são vinculadas a classe genérica utilizando o comando extends;  No construtor da subclasse, antes de qualquer ação, é necessário construir a superclasse utilizando super(argumentos);  Para utilizar uma variável ou invocar um método da classe mãe é utilizada a palavra reservada super (analogamente ao this). 11
  • 12. Subclasse  Como a subclasse herda tudo o que é da superclasse, ou seja, a superclasse passa a compor a subclasse;  Não é necessário redefinir o conteúdo já declarado na classe genérica;  Assim sendo, this funcionará tanto para elementos da superclasse quanto da subclasse;  Quando houver ambiguidade: Utilize o super para se referir a superclasse e this para se referir a subclasse. 12
  • 13. Herança:Programando  Tudo o que estiver em comum na Secretaria e no Gerente irá na classe Funcionario;  Suas características e ações específicas irão na sua própria classe;  Nos construtores das subclasses, sempre construa a superclasse!  super(argumentos). 13 Secretaria Gerente Funcionario
  • 16. Reescrita de Métodos  Sempre envolverá herança;  Suponha um método em uma superclasse;  A subclasse herdará este método, e ele fará parte dela;  Porém, se este mesmo método tiver outra funcionalidade na subclasse, é necessário reescrevê-lo. 16
  • 17. Reescrita de Métodos  Reescrita de método é definir um método na subclasse, com mesma assinatura, ou seja, idêntico, que já foi definido na superclasse.  LEMBRE-SE DA AMBIGUIDADE!  Quando houver ambiguidade: Utilize o super para se referir a superclasse e this para se referir a subclasse. 17
  • 20. Reescrita de Métodos  Outros exemplos:  Saudação diferente entre uma Pessoa suas especialidades;  Bonificações diferentes para Funcionario e Gerente;  Taxas diferentes para Conta e ContaPoupanca;  Remuneração diferente entre um Professor e um ProfessorHorista. 20