12
Curso de Java by Antonio Rodrigues Carvalho Neto

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

Embed Size (px)

Citation preview

Page 1: Java   orientação a objetos (herança)

Curso de Java

by Antonio Rodrigues Carvalho Neto

Page 2: Java   orientação a objetos (herança)

Herança

Page 3: Java   orientação a objetos (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

Page 4: Java   orientação a objetos (herança)

Herança� Na ciência natural, há muitas formas de

herança.Felino

Jaguatirica

Gato

Alpinista

Gato

Boemio

Gato

Siamês

Page 5: Java   orientação a objetos (herança)

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 .

Page 6: Java   orientação a objetos (herança)

Herança – Diagrama UML

Page 7: Java   orientação a objetos (herança)

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

Page 8: Java   orientação a objetos (herança)

Herança

� Portanto a classe do Gato Bohêmio fica da seguinte forma

Gato Bohêmio

tamanho : floatpeso : float

nivel de alcool : int

miar()ser_folgado()

Herdado da(s) classe(s) superiores

Específico da classe

Page 9: Java   orientação a objetos (herança)

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 : floatpeso : float

nivel de alcool : intcor_do_pelo : String

miar()ser_folgado()

dormir_no_sofá()

Herdado da(s) classe(s) superiores

Específico da classe

Page 10: Java   orientação a objetos (herança)

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

Page 11: Java   orientação a objetos (herança)

Objetos

Execução ObjetosClasses

JVM

Funcionario

recebeSalario()

salario

UsaEmpresa

main()

jose

recebeSalario()

800.0

oscar

recebeSalario()

2500.010000.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

Page 12: Java   orientação a objetos (herança)

Exercício

� Crie as classes em java conforme o diagrama abaixo: