Curso de Java
by Antonio Rodrigues Carvalho Neto
Herança
Herança
Ocorre quando uma classe recebe as
mesmas características e
comportamentos de outra classe,
passando a ser uma espécie do seu
progenitor.
Filha
Pai
Mais
abrangente
Mais
especialista
Herança
Na ciência natural, há muitas formas de
herança.
Felino
Jaguatirica
Gato
Alpinista
Gato
Boemio
Gato
Siamês
Herança
Observe que na hierarquia dos gatos, o
Gato Boêmio herda as mesmas
caracteristicas do Felino. E o Gato
Siamês é um tipo de Gato Boêmio,
portanto herda as caracteristicas de Gato
Boêmio e por consequência herda
também as características de Felino.
Herança – Diagrama UML
Herança
Na Herança os membros filhos herdam as
características e comportamentos do pai.
Portanto todos os gatos herdam as
caracteristicas Tamanho e Peso da
classe Felino e também o comportamento
de Miar
Herança
Portanto a classe do Gato Bohêmio fica
da seguinte forma
Gato Bohêmio
tamanho : float
peso : float
nivel de alcool : int
miar()
ser_folgado()
Herdado da(s) classe(s) superiores
Específico da classe
Herança
E o Gato Siamês, pelo fato de ser filho
da classe Gato Bohêmio, ele herda suas
características e comportamentos.
Gato Siamês
tamanho : float
peso : float
nivel de alcool : int
cor_do_pelo : String
miar()
ser_folgado()
dormir_no_sofá()
Herdado da(s) classe(s) superiores
Específico da classe
Herança
Para herdar as características e comportamentos de uma classe
utilize a palavra reservada extends conforme o exemplo abaixo:
public class Funcionario {
float salário;
public void recebeSalario() {
System.out.println(“Oba ... recebi meu salário ... “);
}
}
public class Gerente extends Funcionario {
float verba;
}
Gerente
verba
Funcionario
recebeSalario()
salario
Objetos
Execução ObjetosClasses
JVM
Funcionario
recebeSalario()
salario
UsaEmpresa
main()
jose
recebeSalario()
800.0
oscar
recebeSalario()
2500.0
10000.0;
1
Funcionario jose = new Funcionario();
Gerente oscar = new Gerente();
jose.salario = 800.0f;
oscar.salario = 2500.0f;
oscar.verba = 10000.0f;
2
3
Gerente
verba
Exercício
Crie as classes em java conforme o
diagrama abaixo:

Java orientação a objetos (herança)

  • 1.
    Curso de Java byAntonio Rodrigues Carvalho Neto
  • 2.
  • 3.
    Herança Ocorre quando umaclasse recebe as mesmas características e comportamentos de outra classe, passando a ser uma espécie do seu progenitor. Filha Pai Mais abrangente Mais especialista
  • 4.
    Herança Na ciência natural,há muitas formas de herança. Felino Jaguatirica Gato Alpinista Gato Boemio Gato Siamês
  • 5.
    Herança Observe que nahierarquia dos gatos, o Gato Boêmio herda as mesmas caracteristicas do Felino. E o Gato Siamês é um tipo de Gato Boêmio, portanto herda as caracteristicas de Gato Boêmio e por consequência herda também as características de Felino.
  • 6.
  • 7.
    Herança Na Herança osmembros filhos herdam as características e comportamentos do pai. Portanto todos os gatos herdam as caracteristicas Tamanho e Peso da classe Felino e também o comportamento de Miar
  • 8.
    Herança Portanto a classedo Gato Bohêmio fica da seguinte forma Gato Bohêmio tamanho : float peso : float nivel de alcool : int miar() ser_folgado() Herdado da(s) classe(s) superiores Específico da classe
  • 9.
    Herança E o GatoSiamês, pelo fato de ser filho da classe Gato Bohêmio, ele herda suas características e comportamentos. Gato Siamês tamanho : float peso : float nivel de alcool : int cor_do_pelo : String miar() ser_folgado() dormir_no_sofá() Herdado da(s) classe(s) superiores Específico da classe
  • 10.
    Herança Para herdar ascaracterísticas e comportamentos de uma classe utilize a palavra reservada extends conforme o exemplo abaixo: public class Funcionario { float salário; public void recebeSalario() { System.out.println(“Oba ... recebi meu salário ... “); } } public class Gerente extends Funcionario { float verba; } Gerente verba Funcionario recebeSalario() salario
  • 11.
    Objetos Execução ObjetosClasses JVM Funcionario recebeSalario() salario UsaEmpresa main() jose recebeSalario() 800.0 oscar recebeSalario() 2500.0 10000.0; 1 Funcionario jose= new Funcionario(); Gerente oscar = new Gerente(); jose.salario = 800.0f; oscar.salario = 2500.0f; oscar.verba = 10000.0f; 2 3 Gerente verba
  • 12.
    Exercício Crie as classesem java conforme o diagrama abaixo: