SlideShare une entreprise Scribd logo
1  sur  15
Herança/
Polimorfismo
em JAVA
JAVA
Curso técnico de Informática, SENAC / MG
Orientador Evandro Júnior
• Mecanismo pelo qual elementos mais específicos (subclasses)
incorporam estrutura e comportamento de elementos mais gerais
(superclasses).
// SuperClass.java
public class SuperClass {
...
}
// SubClass.java
public class SubClass extends SuperClass {
...
}
 Herança é a capacidade de reutilizar código pela especialização de
soluções genéricas já existentes.
 Herança é na verdade, uma classe derivada de outra classe. Processo
no qual uma classe herda características de outra.
Herança
Herança
Subclasse
 Herda atributos e métodos
 Modifica métodos
 Acrescenta novos atributos e métodos
A subclasse estende a superclasse
Herança
Herança
Os animais
• Todos os nossos animais herdam da classe
Animal, porque todos eles fazem coisas
parecidas, como comer, andar, dormir e fazer
barulhos;
• Além dessas ações, a classe animal tem propriedades
para designar peso, altura e a cor de sua pele (ou
pelos);
Herança
Classe Animal
Herança
Indo para os outros animais
• Agora nós não precisamos mais implementar essas mesmas funcionalidades
básicas nos nossos animais, todos eles vão herdar as qualidades da classe
Animal;
• Quando um dos nossos animais não estiver interessado na funcionalidade
provida pela classe Animal ele vai poder alterar essa funcionalidade só para
ele;
• Os objetos que herdam de animal são versões especializadas do nosso animal;
• Para informar que uma classe herda da outra nós usamos a palavra reservada
“extends ”;
Herança
Exemplo
Funcionário
Nome
RG
Salario
Aumento(valor)
Pagamento()
Chefe
Contas
Gastos_extra
Adicional_chefia
Pagamento_extra()
Herança
Implementação da subclasse Chefe
Herança
Instanciação da subclasse
Herança
Hierarquia de Classes
Superclasse direta:
• Herdada explicitamente (um nível acima da
hierarquia).
Superclasse indireta:
• Herdada de dois ou mais níveis acima da hierarquia.
Herança
Hierarquia de Classes
Herança única:
• Herda de uma superclasse.
Herança múltipla:
• Herda de múltiplas superclasses.
– Java não suporta herança múltipla
Polimorfismo
Polimorfismo = várias formas
É o princípio pelo qual duas ou mais classes
derivadas de uma mesma superclasse
podem invocar métodos que têm a mesma
identificação (assinatura) mas
comportamentos distintos.
Polimorfismo
Animal
Tipo
Cor
Peso
...
Comer()
Cachorro
Comer() {
“cachorro come ração...”
}
Tigre
Comer() {
“cachorro come osso...”
}
Herança
Exemplo de animal especializado

Contenu connexe

Tendances

POO - 02 - Fundamentos da Linguagem Java e da Orientação a Objetos
POO - 02 - Fundamentos da Linguagem Java e da Orientação a ObjetosPOO - 02 - Fundamentos da Linguagem Java e da Orientação a Objetos
POO - 02 - Fundamentos da Linguagem Java e da Orientação a ObjetosLudimila Monjardim Casagrande
 
Banco de dados - Aula 1 SQL
Banco de dados - Aula 1 SQLBanco de dados - Aula 1 SQL
Banco de dados - Aula 1 SQLDaniel Brandão
 
Java: Heranca e polimorfismo
Java: Heranca e polimorfismoJava: Heranca e polimorfismo
Java: Heranca e polimorfismoArthur Emanuel
 
POO - Unidade 2 (parte 1) - Diagrama de Classe - Associação (versão 2)
POO   - Unidade 2 (parte 1) - Diagrama de Classe - Associação (versão 2)POO   - Unidade 2 (parte 1) - Diagrama de Classe - Associação (versão 2)
POO - Unidade 2 (parte 1) - Diagrama de Classe - Associação (versão 2)Marcello Thiry
 
Aula de Introdução - JAVA
Aula de Introdução  - JAVAAula de Introdução  - JAVA
Aula de Introdução - JAVAMoises Omena
 
Exercicios Filas (Queues) - Estruturas de dados e algoritmos com Java
Exercicios Filas (Queues) - Estruturas de dados e algoritmos com JavaExercicios Filas (Queues) - Estruturas de dados e algoritmos com Java
Exercicios Filas (Queues) - Estruturas de dados e algoritmos com JavaLoiane Groner
 
Programação Orientada a Objetos
Programação Orientada a ObjetosProgramação Orientada a Objetos
Programação Orientada a ObjetosIgor Takenami
 
The Singleton Pattern Presentation
The Singleton Pattern PresentationThe Singleton Pattern Presentation
The Singleton Pattern PresentationJAINIK PATEL
 
Aula 2 - POO: Fundamentos da linguagem Java
Aula 2 - POO: Fundamentos da linguagem JavaAula 2 - POO: Fundamentos da linguagem Java
Aula 2 - POO: Fundamentos da linguagem JavaDaniel Brandão
 
Lezione 11: Accesso ai RESTful Web Services in Java
Lezione 11: Accesso ai RESTful Web Services in JavaLezione 11: Accesso ai RESTful Web Services in Java
Lezione 11: Accesso ai RESTful Web Services in JavaAndrea Della Corte
 

Tendances (20)

POO - 02 - Fundamentos da Linguagem Java e da Orientação a Objetos
POO - 02 - Fundamentos da Linguagem Java e da Orientação a ObjetosPOO - 02 - Fundamentos da Linguagem Java e da Orientação a Objetos
POO - 02 - Fundamentos da Linguagem Java e da Orientação a Objetos
 
POO - 20 - Wrapper Classes
POO - 20 - Wrapper ClassesPOO - 20 - Wrapper Classes
POO - 20 - Wrapper Classes
 
POO - 10 - Herança
POO - 10 - HerançaPOO - 10 - Herança
POO - 10 - Herança
 
Classes e Objectos JAVA
Classes e Objectos JAVAClasses e Objectos JAVA
Classes e Objectos JAVA
 
POO - Aula 10 - Polimorfismo
POO - Aula 10 - PolimorfismoPOO - Aula 10 - Polimorfismo
POO - Aula 10 - Polimorfismo
 
Programação Orientado a Objetos
Programação Orientado a ObjetosProgramação Orientado a Objetos
Programação Orientado a Objetos
 
POO - 18 - Sobrecarga e Sobreposição de Métodos
POO - 18 - Sobrecarga e Sobreposição de MétodosPOO - 18 - Sobrecarga e Sobreposição de Métodos
POO - 18 - Sobrecarga e Sobreposição de Métodos
 
Banco de dados - Aula 1 SQL
Banco de dados - Aula 1 SQLBanco de dados - Aula 1 SQL
Banco de dados - Aula 1 SQL
 
POO - 13 - Arrays em Java
POO - 13 - Arrays em JavaPOO - 13 - Arrays em Java
POO - 13 - Arrays em Java
 
POO - 16 - Polimorfismo
POO - 16 - PolimorfismoPOO - 16 - Polimorfismo
POO - 16 - Polimorfismo
 
Java: Heranca e polimorfismo
Java: Heranca e polimorfismoJava: Heranca e polimorfismo
Java: Heranca e polimorfismo
 
POO - Unidade 2 (parte 1) - Diagrama de Classe - Associação (versão 2)
POO   - Unidade 2 (parte 1) - Diagrama de Classe - Associação (versão 2)POO   - Unidade 2 (parte 1) - Diagrama de Classe - Associação (versão 2)
POO - Unidade 2 (parte 1) - Diagrama de Classe - Associação (versão 2)
 
Aula de Introdução - JAVA
Aula de Introdução  - JAVAAula de Introdução  - JAVA
Aula de Introdução - JAVA
 
Exercicios Filas (Queues) - Estruturas de dados e algoritmos com Java
Exercicios Filas (Queues) - Estruturas de dados e algoritmos com JavaExercicios Filas (Queues) - Estruturas de dados e algoritmos com Java
Exercicios Filas (Queues) - Estruturas de dados e algoritmos com Java
 
Programação Orientada a Objetos
Programação Orientada a ObjetosProgramação Orientada a Objetos
Programação Orientada a Objetos
 
POO - 14 - Vetores
POO - 14 - VetoresPOO - 14 - Vetores
POO - 14 - Vetores
 
The Singleton Pattern Presentation
The Singleton Pattern PresentationThe Singleton Pattern Presentation
The Singleton Pattern Presentation
 
Aula 2 - POO: Fundamentos da linguagem Java
Aula 2 - POO: Fundamentos da linguagem JavaAula 2 - POO: Fundamentos da linguagem Java
Aula 2 - POO: Fundamentos da linguagem Java
 
Lezione 11: Accesso ai RESTful Web Services in Java
Lezione 11: Accesso ai RESTful Web Services in JavaLezione 11: Accesso ai RESTful Web Services in Java
Lezione 11: Accesso ai RESTful Web Services in Java
 
JAVA - Orientação a Objetos
JAVA - Orientação a ObjetosJAVA - Orientação a Objetos
JAVA - Orientação a Objetos
 

En vedette

Polimorfismo java
Polimorfismo javaPolimorfismo java
Polimorfismo javaFAFICA
 
Polimorfismo en JAVA
Polimorfismo en JAVAPolimorfismo en JAVA
Polimorfismo en JAVAByron David
 
Polimorfismo
PolimorfismoPolimorfismo
PolimorfismoCaveiras
 
Programação Orientada a Objetos com Java
Programação Orientada a Objetos com JavaProgramação Orientada a Objetos com Java
Programação Orientada a Objetos com JavaÁlvaro Farias Pinheiro
 
Programação orientada a objetos
Programação orientada a objetosProgramação orientada a objetos
Programação orientada a objetosCleyton Ferrari
 
HERANÇA - Programação Orientada a Objetos JAVA
HERANÇA - Programação Orientada a Objetos JAVAHERANÇA - Programação Orientada a Objetos JAVA
HERANÇA - Programação Orientada a Objetos JAVAAparicio Junior
 
Polimorfismo em java
Polimorfismo em javaPolimorfismo em java
Polimorfismo em javaManoel Afonso
 
Java 09 Heranca Reescrita Polimorfismo
Java 09 Heranca Reescrita PolimorfismoJava 09 Heranca Reescrita Polimorfismo
Java 09 Heranca Reescrita PolimorfismoRegis Magalhães
 
Orientação a Objetos
Orientação a ObjetosOrientação a Objetos
Orientação a ObjetosEdy Segura
 
POO - Aula 13 - Classe Abstrata e Interface
POO - Aula 13 - Classe Abstrata e InterfacePOO - Aula 13 - Classe Abstrata e Interface
POO - Aula 13 - Classe Abstrata e InterfaceFelipe J. R. Vieira
 
Anexo vi pontua+ç+âo
Anexo vi pontua+ç+âoAnexo vi pontua+ç+âo
Anexo vi pontua+ç+âoEvandro Lira
 
Guia Da Internet 2009
Guia Da Internet 2009Guia Da Internet 2009
Guia Da Internet 2009ruixcp
 
Boletim15 a 17042014
Boletim15 a 17042014Boletim15 a 17042014
Boletim15 a 17042014Evandro Lira
 
Guia da-internet-2011
Guia da-internet-2011Guia da-internet-2011
Guia da-internet-2011elianemfr
 
Convite ago-2015-ia+ºu
Convite   ago-2015-ia+ºuConvite   ago-2015-ia+ºu
Convite ago-2015-ia+ºuJosete Sampaio
 
Anexo vii calend+ürio
Anexo vii calend+ürioAnexo vii calend+ürio
Anexo vii calend+ürioEvandro Lira
 

En vedette (20)

Polimorfismo java
Polimorfismo javaPolimorfismo java
Polimorfismo java
 
Polimorfismo en JAVA
Polimorfismo en JAVAPolimorfismo en JAVA
Polimorfismo en JAVA
 
PCII - AULA 2: HERANÇA EM JAVA
PCII -  AULA 2: HERANÇA EM JAVAPCII -  AULA 2: HERANÇA EM JAVA
PCII - AULA 2: HERANÇA EM JAVA
 
POO Herança
POO HerançaPOO Herança
POO Herança
 
Polimorfismo
PolimorfismoPolimorfismo
Polimorfismo
 
Programação Orientada a Objetos com Java
Programação Orientada a Objetos com JavaProgramação Orientada a Objetos com Java
Programação Orientada a Objetos com Java
 
Programação orientada a objetos
Programação orientada a objetosProgramação orientada a objetos
Programação orientada a objetos
 
HERANÇA - Programação Orientada a Objetos JAVA
HERANÇA - Programação Orientada a Objetos JAVAHERANÇA - Programação Orientada a Objetos JAVA
HERANÇA - Programação Orientada a Objetos JAVA
 
Polimorfismo em java
Polimorfismo em javaPolimorfismo em java
Polimorfismo em java
 
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
 
Programação Orientada a Objetos - 001
Programação Orientada a Objetos - 001Programação Orientada a Objetos - 001
Programação Orientada a Objetos - 001
 
Orientação a Objetos
Orientação a ObjetosOrientação a Objetos
Orientação a Objetos
 
POO - Aula 13 - Classe Abstrata e Interface
POO - Aula 13 - Classe Abstrata e InterfacePOO - Aula 13 - Classe Abstrata e Interface
POO - Aula 13 - Classe Abstrata e Interface
 
Anexo vi pontua+ç+âo
Anexo vi pontua+ç+âoAnexo vi pontua+ç+âo
Anexo vi pontua+ç+âo
 
Guia Da Internet 2009
Guia Da Internet 2009Guia Da Internet 2009
Guia Da Internet 2009
 
Boletim15 a 17042014
Boletim15 a 17042014Boletim15 a 17042014
Boletim15 a 17042014
 
Guia da-internet-2011
Guia da-internet-2011Guia da-internet-2011
Guia da-internet-2011
 
Convite ago-2015-ia+ºu
Convite   ago-2015-ia+ºuConvite   ago-2015-ia+ºu
Convite ago-2015-ia+ºu
 
Anexo vii calend+ürio
Anexo vii calend+ürioAnexo vii calend+ürio
Anexo vii calend+ürio
 

Plus de Evandro Júnior

Logica de programação / Algoritmos em Portugol
Logica de programação / Algoritmos em PortugolLogica de programação / Algoritmos em Portugol
Logica de programação / Algoritmos em PortugolEvandro Júnior
 
Programação para dispositivos móveis com PhoneGap Cordova
Programação para dispositivos móveis com PhoneGap CordovaProgramação para dispositivos móveis com PhoneGap Cordova
Programação para dispositivos móveis com PhoneGap CordovaEvandro Júnior
 
Arquitetura de Computadores: Processos e Threads
Arquitetura de Computadores: Processos e ThreadsArquitetura de Computadores: Processos e Threads
Arquitetura de Computadores: Processos e ThreadsEvandro Júnior
 
Arquitetura de Computadores - Concorrência
Arquitetura de Computadores - ConcorrênciaArquitetura de Computadores - Concorrência
Arquitetura de Computadores - ConcorrênciaEvandro Júnior
 
Aula 1 - Fundamento de Hardware e Software para arquitetura de computadores.
Aula 1 - Fundamento de Hardware e Software para arquitetura de computadores.Aula 1 - Fundamento de Hardware e Software para arquitetura de computadores.
Aula 1 - Fundamento de Hardware e Software para arquitetura de computadores.Evandro Júnior
 
Aula 1 - Introdução a linguagem JAVA SE
Aula 1 - Introdução a linguagem JAVA SEAula 1 - Introdução a linguagem JAVA SE
Aula 1 - Introdução a linguagem JAVA SEEvandro Júnior
 
Aula 01 - Começando a programar em PHP
Aula 01 - Começando a programar em PHPAula 01 - Começando a programar em PHP
Aula 01 - Começando a programar em PHPEvandro Júnior
 
Programação Orientada á Objeto - Paradigmas e Implementação
Programação Orientada á Objeto - Paradigmas e ImplementaçãoProgramação Orientada á Objeto - Paradigmas e Implementação
Programação Orientada á Objeto - Paradigmas e ImplementaçãoEvandro Júnior
 
Construtores e destrutores com aplicação em c#
Construtores e destrutores com aplicação em c#Construtores e destrutores com aplicação em c#
Construtores e destrutores com aplicação em c#Evandro Júnior
 
Processadores / CPU (Unidade central de processamento) - Atualizado 2014
Processadores / CPU (Unidade central de processamento) - Atualizado 2014Processadores / CPU (Unidade central de processamento) - Atualizado 2014
Processadores / CPU (Unidade central de processamento) - Atualizado 2014Evandro Júnior
 
Placa Mãe - Atualizado 29/10/2014
Placa Mãe - Atualizado 29/10/2014Placa Mãe - Atualizado 29/10/2014
Placa Mãe - Atualizado 29/10/2014Evandro Júnior
 
Comandos ms-dos - Atualizado 29/10/2014
Comandos ms-dos - Atualizado 29/10/2014Comandos ms-dos - Atualizado 29/10/2014
Comandos ms-dos - Atualizado 29/10/2014Evandro Júnior
 
Unidade de disco - Atualizado 2014
Unidade de disco - Atualizado 2014Unidade de disco - Atualizado 2014
Unidade de disco - Atualizado 2014Evandro Júnior
 
Fundamentos da Informática - Componentes (Atualizado 2014)
Fundamentos da Informática - Componentes  (Atualizado 2014)Fundamentos da Informática - Componentes  (Atualizado 2014)
Fundamentos da Informática - Componentes (Atualizado 2014)Evandro Júnior
 
Modelo de camadas TCP/IP
Modelo de camadas TCP/IPModelo de camadas TCP/IP
Modelo de camadas TCP/IPEvandro Júnior
 
Cascateamento x Empilhamento de Switches
Cascateamento x Empilhamento de SwitchesCascateamento x Empilhamento de Switches
Cascateamento x Empilhamento de SwitchesEvandro Júnior
 
Aula 1 - curso java web - JSP Java Server Page
Aula 1 - curso java web - JSP Java Server PageAula 1 - curso java web - JSP Java Server Page
Aula 1 - curso java web - JSP Java Server PageEvandro Júnior
 

Plus de Evandro Júnior (20)

Logica de programação / Algoritmos em Portugol
Logica de programação / Algoritmos em PortugolLogica de programação / Algoritmos em Portugol
Logica de programação / Algoritmos em Portugol
 
Programação para dispositivos móveis com PhoneGap Cordova
Programação para dispositivos móveis com PhoneGap CordovaProgramação para dispositivos móveis com PhoneGap Cordova
Programação para dispositivos móveis com PhoneGap Cordova
 
Arquitetura de Computadores: Processos e Threads
Arquitetura de Computadores: Processos e ThreadsArquitetura de Computadores: Processos e Threads
Arquitetura de Computadores: Processos e Threads
 
Arquitetura de Computadores - Concorrência
Arquitetura de Computadores - ConcorrênciaArquitetura de Computadores - Concorrência
Arquitetura de Computadores - Concorrência
 
Aula 1 - Fundamento de Hardware e Software para arquitetura de computadores.
Aula 1 - Fundamento de Hardware e Software para arquitetura de computadores.Aula 1 - Fundamento de Hardware e Software para arquitetura de computadores.
Aula 1 - Fundamento de Hardware e Software para arquitetura de computadores.
 
Aula 1 - Introdução a linguagem JAVA SE
Aula 1 - Introdução a linguagem JAVA SEAula 1 - Introdução a linguagem JAVA SE
Aula 1 - Introdução a linguagem JAVA SE
 
Aula 01 - Começando a programar em PHP
Aula 01 - Começando a programar em PHPAula 01 - Começando a programar em PHP
Aula 01 - Começando a programar em PHP
 
Programação Orientada á Objeto - Paradigmas e Implementação
Programação Orientada á Objeto - Paradigmas e ImplementaçãoProgramação Orientada á Objeto - Paradigmas e Implementação
Programação Orientada á Objeto - Paradigmas e Implementação
 
Construtores e destrutores com aplicação em c#
Construtores e destrutores com aplicação em c#Construtores e destrutores com aplicação em c#
Construtores e destrutores com aplicação em c#
 
Processadores / CPU (Unidade central de processamento) - Atualizado 2014
Processadores / CPU (Unidade central de processamento) - Atualizado 2014Processadores / CPU (Unidade central de processamento) - Atualizado 2014
Processadores / CPU (Unidade central de processamento) - Atualizado 2014
 
Placa Mãe - Atualizado 29/10/2014
Placa Mãe - Atualizado 29/10/2014Placa Mãe - Atualizado 29/10/2014
Placa Mãe - Atualizado 29/10/2014
 
Comandos ms-dos - Atualizado 29/10/2014
Comandos ms-dos - Atualizado 29/10/2014Comandos ms-dos - Atualizado 29/10/2014
Comandos ms-dos - Atualizado 29/10/2014
 
Unidade de disco - Atualizado 2014
Unidade de disco - Atualizado 2014Unidade de disco - Atualizado 2014
Unidade de disco - Atualizado 2014
 
Fundamentos da Informática - Componentes (Atualizado 2014)
Fundamentos da Informática - Componentes  (Atualizado 2014)Fundamentos da Informática - Componentes  (Atualizado 2014)
Fundamentos da Informática - Componentes (Atualizado 2014)
 
Modelo de camadas TCP/IP
Modelo de camadas TCP/IPModelo de camadas TCP/IP
Modelo de camadas TCP/IP
 
Cascateamento x Empilhamento de Switches
Cascateamento x Empilhamento de SwitchesCascateamento x Empilhamento de Switches
Cascateamento x Empilhamento de Switches
 
Cabeamento estruturado
Cabeamento estruturadoCabeamento estruturado
Cabeamento estruturado
 
Endereçamento IP CIDR
Endereçamento IP CIDREndereçamento IP CIDR
Endereçamento IP CIDR
 
Aula 1 - curso java web - JSP Java Server Page
Aula 1 - curso java web - JSP Java Server PageAula 1 - curso java web - JSP Java Server Page
Aula 1 - curso java web - JSP Java Server Page
 
Aula 1 apresentação
Aula 1   apresentaçãoAula 1   apresentação
Aula 1 apresentação
 

Herança e Polimorfismo em Java