Vous êtes sur la page 1sur 78

Universo

Java
rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

Galxia
JSE
Java Standard
Edition
rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

Constelao
Programao
orientada a objetos
rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

Tpicos

Parte I Introduo Programao Orientada a Objetos

Parte II Classes e objetos

Parte III Interfaces e herana

Parte IV Tipos enumerados e annotations

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

Tpicos

Parte I Introduo Programao Orientada a Objetos

Parte II Classes e objetos

Parte III Interfaces e herana

Parte IV Tipos enumerados e annotations

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

Parte I
Introduo
Programao
Orientada a Objetos
rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

Tpicos

Introduo POO

Questes de concursos

Abstrao

Questes de concursos

Classes

Questes de concursos

Objetos

Questes de concursos

Mensagem

Questes de concursos
rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

Tpicos

Encapsulamento

Questes de concursos

Herana

Questes de concursos

Polimorfismo

Questes de concursos

Referncias

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

Introduo POO

Programao estruturada

Foca no desenvolvimento de procedimentos para resolver um


problema
Forma de trabalhar com a programao estruturada:

Primeiro, os algoritmos:

Depois, as estruturas de dados:

Planejavam-se e desenvolviam-se os procedimentos


Encontravam-se meios apropriados de armazenamento de dados

Forma de trabalhar com a programao orientada a objetos:

Primeiro, os dados:

Examinam-se os dados de um contexto

Depois, os mtodos:

Desenvolvem-se as operaes que vo trabalhar com os dados

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

Introduo POO
Programao
Programao estruturada
estruturada

POO
POO
Dados
Dados do
do
objeto
objeto

Procedimento
Procedimento

Procedimento
Procedimento
Dados
Dados
globais
globais

Dados
Dados do
do
objeto
objeto

Procedimento
Procedimento

Procedimento
Procedimento

Dados
Dados do
do
objeto
objeto

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

Mtodo
Mtodo
Mtodo
Mtodo

Mtodo
Mtodo
Mtodo
Mtodo

Mtodo
Mtodo
Mtodo
Mtodo
10

Introduo POO
Programao
Programao estruturada
estruturada

??

!!
Programao
Programao orientada
orientada aa objetos
objetos

??
rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

!!
11

Introduo POO

Conceitos-chave da POO

Classes

Objetos

Herana

Polimorfismo

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

12

Questes de concursos
[PaqTcPB - 2012 - UEPB - Tcnico em Informtica Programador] So conceitos chaves do paradigma Orientado a
Objetos:

[A] Classes, objetos, regras e funes.

[B] Casamento de padres, herana, classes e objetos.

[C] Classes, objetos, herana e polimorfismo por incluso.

[D] Polimorfismo por incluso, casamento de padres,


transparncia referencial e herana.
[E] Sobrecarga, inferncia lgica, backtracking e herana.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

13

Questes de concursos
[PaqTcPB - 2012 - UEPB - Tcnico em Informtica Programador] So conceitos chaves do paradigma Orientado a
Objetos:

[A] Classes, objetos, regras e funes.

[B] Casamento de padres, herana, classes e objetos.

[C] Classes, objetos, herana e polimorfismo por incluso.

[D] Polimorfismo por incluso, casamento de padres,


transparncia referencial e herana.
[E] Sobrecarga, inferncia lgica, backtracking e herana.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

14

Abstrao

Consiste em:

Focalizar nos aspectos essenciais inerentes a uma entidade

Ignorar propriedades acidentais

Em termos de desenvolvimento de sistemas, significa


concentrar-se no que um objeto e faz antes de se decidir
como ele ser implementado
O seu uso:

Preserva a liberdade para tomar decises de desenvolvimento ou


de implementao apenas quando h um melhor entendimento
do problema a ser resolvido
Permite que um mesmo modelo conceitual (orientao a objetos)
seja utilizado para todas as fases de desenvolvimento de um
sistema, desde sua anlise at sua documentao
rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

15

Questes de concursos
[FCC 2011 TRE/RN Tcnico Judicirio Especialidade
Programao de Sistemas Questo 28] Em desenvolvimento de
sistemas, focalizar nos aspectos essenciais inerentes a uma
entidade e ignorar propriedades significa concentrar-se no que
um objeto e faz antes de se decidir como ele ser
implementado. Na orientao a objetos, este um conceito tpico

[A] da abstrao.

[B] do encapsulamento.

[C] do compartilhamento.

[D] da herana.

[E] da reusabilidade.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

16

Questes de concursos
[FCC 2011 TRE/RN Tcnico Judicirio Especialidade
Programao de Sistemas Questo 28] Em desenvolvimento de
sistemas, focalizar nos aspectos essenciais inerentes a uma
entidade e ignorar propriedades significa concentrar-se no que
um objeto e faz antes de se decidir como ele ser
implementado. Na orientao a objetos, este um conceito tpico

[A] da abstrao.

[B] do encapsulamento.

[C] do compartilhamento.

[D] da herana.

[E] da reusabilidade.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

17

Questes de concursos
[CESPE 2013 TRE/MS - Tcnico Judicirio - Programao de
Sistemas Questo 38] Assinale a opo correta quanto
abordagem conceitual de abstrao sob o paradigma de
programao orientada a objetos.

[A] As abstraes, idealmente, caracterizam-se por no serem


grandes demais em comparao aos mdulos, pois seno elas
se tornam multifuncionais e de difcil compreenso. Como
consequncia, a abstrao deve ser implementada apenas no
nvel de estruturas de dados necessrios para se atingir o
objetivo pretendido.
[B] Abstrao consiste em uma linguagem puramente lgica. A
motivao para isso veio em parte da vontade de se
reconciliar o uso da lgica como uma linguagem declarativa
de representao do conhecimento com a representao
procedimental do conhecimento.
rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

18

Questes de concursos
[CESPE 2013 TRE/MS - Tcnico Judicirio - Programao de
Sistemas Questo 38] Assinale a opo correta quanto
abordagem conceitual de abstrao sob o paradigma de
programao orientada a objetos.

[C] Abstrao uma linguagem declarativa que permite


acesso base de dados mediante a utilizao da teoria dos
conjuntos e da lgebra relacional como fundamento de seu
funcionamento.
[D] Abstrao um conceito segundo o qual o sistema ou
software dividido em partes distintas. Compe o ferramental
necessrio para um programa mais legvel com uma melhor
manuteno e melhor desempenho por meio da programao
orientada a objetos.
rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

19

Questes de concursos
[CESPE 2013 TRE/MS - Tcnico Judicirio - Programao de
Sistemas Questo 38] Assinale a opo correta quanto
abordagem conceitual de abstrao sob o paradigma de
programao orientada a objetos.

[E] Abstrao a habilidade de se concentrar nos aspectos


essenciais de um contexto qualquer, ignorando caractersticas
menos importantes ou acidentais. Em modelagem orientada a
objetos, uma classe uma abstrao de entidades existentes
no domnio do sistema de software.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

20

Questes de concursos
[CESPE 2013 TRE/MS - Tcnico Judicirio - Programao de
Sistemas Questo 38] Assinale a opo correta quanto
abordagem conceitual de abstrao sob o paradigma de
programao orientada a objetos.

[E] Abstrao a habilidade de se concentrar nos aspectos


essenciais de um contexto qualquer, ignorando
caractersticas menos importantes ou acidentais. Em
modelagem orientada a objetos, uma classe uma abstrao
de entidades existentes no domnio do sistema de software.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

21

Classes

So definies de atributos e funes de um tipo de objetos

So plantas de criao de objetos

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

22

Classes

Relacionamentos mais comuns entre classes:

Dependncia

Agregao

Usa um
Uma classe tem um

Herana

um

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

23

Questes de concursos
[FCC 2012 TJ/RJ Analista Judicirio Especialidade Anlise de
Sistemas Questo 57] No contexto de programao orientada a
objetos, considere as afirmativas abaixo.

[IV] Classes so apenas agrupamentos de mtodos.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

24

Questes de concursos
[FCC 2012 TJ/RJ Analista Judicirio Especialidade Anlise de
Sistemas Questo 57] No contexto de programao orientada a
objetos, considere as afirmativas abaixo.

[IV] Classes so apenas agrupamentos de atributos e


mtodos.

Gabarito: ERRADO.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

25

Questes de concursos
[FCC 2011 TRT 23 Regio Analista Judicirio Especialidade
Tecnologia da Informao Questo 41] Sobre os conceitos de
orientao a objetos, considere:

[I] Classe encapsula dados para descrever o contedo de


alguma entidade do mundo real.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

26

Questes de concursos
[FCC 2011 TRT 23 Regio Analista Judicirio Especialidade
Tecnologia da Informao Questo 41] Sobre os conceitos de
orientao a objetos, considere:

[I] Classe encapsula dados e mtodos para descrever o


contedo e o comportamento de alguma entidade do mundo
real.

Gabarito: ERRADO.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

27

Objetos

So instncias das classes


So a pea-chave do entendimento do conceito de orientao
a objetos
Possuem as caractersticas-chave:

Propriedades

Comportamento

Identidade

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

28

Objetos

Possuem as caractersticas-chave:

Propriedades

Representam os estados dos objetos

So representadas pelos atributos

Podem ser modificadas

Comportamento

So o conjunto de operaes (mtodos) que agem sobre as


propriedades (atributos)

Os mtodos so ativados (disparados) quando o objeto recebe uma


mensagem solicitando sua execuo

Identidade

Identifica o objeto (nome)

Diferencia um objeto de outro

imutvel
rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

29

Objetos

Mtodos
Atributos

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

30

Objetos

Ao se trabalhar com organizao do do cdigo em objetos


individuais de software, h uma uma srie de benefcios, tais
como:

Modularidade

O cdigo fonte para um objeto pode ser escrito e mantido


independentemente do cdigo fonte para outros objetos

Uma vez criado, um objeto pode ser facilmente introduzido no


sistema

Encapsulamento de informaes

Ao interagir somente com mtodos de um objeto, os detalhes de


sua implementao interna permanecem escondidos do mundo
exterior

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

31

Objetos

Ao se trabalhar com organizao do do cdigo em objetos


individuais de software, h uma uma srie de benefcios, tais
como:

Reutilizao de cdigo

Se um objeto j existe, pode-se usar esse objeto em outro


programa

Facilidade de depurao e insero

Se h um objeto que problemtico, pode-se:

Remov-lo da aplicao

Inserir um objeto diferente para substitui-lo

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

32

Questes de concursos
[FCC 2012 TRE/SP Analista Judicirio Especialidade Anlise de
Sistemas Questo 41] Nos conceitos de orientao a objetos, I
uma estrutura composta por II que descrevem suas propriedades
e tambm por III que moldam seu comportamento. IV so V
dessa estrutura e s existem em tempo de execuo.
Para completar corretamente o texto as lacunas devem ser
preenchidas, respectivamente, por

[A] objeto, mtodos, assinaturas, Classes, cpias.

[B] polimorfismo, funes, mtodos, Herana, cpias.

[C] classe, atributos, operaes, Objetos, instncias.

[D] multiplicidade, smbolos, nmeros, Classes, herdeiros.

[E] domnio, diagramas, casos de caso, Diagramas de classe,


exemplos.
rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

33

Questes de concursos
[FCC 2012 TRE/SP Analista Judicirio Especialidade Anlise de
Sistemas Questo 41] Nos conceitos de orientao a objetos,
classe uma estrutura composta por atributos que descrevem
suas propriedades e tambm por operaes que moldam seu
comportamento. Objetos so instncias dessa estrutura e s
existem em tempo de execuo.
Para completar corretamente o texto as lacunas devem ser
preenchidas, respectivamente, por

[C] classe, atributos, operaes, Objetos, instncias.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

34

Questes de concursos
[FCC 2012 TJ/RJ Analista Judicirio Especialidade Anlise de
Sistemas Questo 57] No contexto de programao orientada a
objetos, considere as afirmativas abaixo.

[I] Objetos so instncias de classes.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

35

Questes de concursos
[FCC 2012 TJ/RJ Analista Judicirio Especialidade Anlise de
Sistemas Questo 57] No contexto de programao orientada a
objetos, considere as afirmativas abaixo.

[I] Objetos so instncias de classes.

Gabarito: CERTO.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

36

Questes de concursos
[CESPE 2008 MPE/RR Cargo 3] Acerca de lgica de
programao, julgue o item.

[76] Na orientao a objetos, um objeto tipicamente possui


estado e operaes definidas. O estado representado por
atributos, e as operaes associadas ao objeto podem
fornecer servios a outros objetos. Os objetos so criados de
acordo com classes.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

37

Questes de concursos
[CESPE 2008 MPE/RR Cargo 3] Acerca de lgica de
programao, julgue o item.

[76] Na orientao a objetos, um objeto tipicamente possui


estado e operaes definidas. O estado representado por
atributos, e as operaes associadas ao objeto podem
fornecer servios a outros objetos. Os objetos so criados de
acordo com classes.

Gabarito: CERTO.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

38

Mensagem

So formadas por trs componentes bsicos:

Receptor

Nome do mtodo que se deseja executar

Parmetros necessrios ao mtodo

O objeto a quem a mensagem endereada

Se existirem

Exemplo:

Candidato derp = new Candidato();

derp.mostrarNotas(3);

Receptor: derp

Nome do mtodo: mostrarNotas()

Parmetro: 3
rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

39

Questes de concursos
[FCC 2012 TJ/RJ Analista Judicirio Especialidade Anlise de
Sistemas Questo 57] No contexto de programao orientada a
objetos, considere as afirmativas abaixo.

[III] Mensagens so formas de executar mtodos.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

40

Questes de concursos
[FCC 2012 TJ/RJ Analista Judicirio Especialidade Anlise de
Sistemas Questo 57] No contexto de programao orientada a
objetos, considere as afirmativas abaixo.

[III] Mensagens so formas de executar mtodos.

Gabarito: CERTO.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

41

Questes de concursos
[CESPE 2011 FUB Cargo 1] Com relao s tcnicas de
programao orientada a objetos, julgue o item a seguir.

[76] Um objeto possui dados internos e mtodos que definem,


respectivamente, seu estado atual e seu comportamento. Um
objeto pode se comunicar com outros objetos passando
mensagens.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

42

Questes de concursos
[CESPE 2011 FUB Cargo 1] Com relao s tcnicas de
programao orientada a objetos, julgue o item a seguir.

[76] Um objeto possui dados internos e mtodos que definem,


respectivamente, seu estado atual e seu comportamento. Um
objeto pode se comunicar com outros objetos passando
mensagens.

Gabarito: CERTO.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

43

Encapsulamento

a habilidade de esconder de outros objetos, as


caractersticas intrnsecas de um dado objeto
Toda a comunicao inter objetos precisa ser realizada via
mtodos
Um objeto no deve ser capaz de acessar e alterar atributos
de outro diretamente

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

44

Encapsulamento

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

45

Questes de concursos
[FCC 2012 TRT 11 Regio Analista Judicirio Especialidade
Tecnologia da Informao Questo 48] Sobre Programao
Orientada a Objetos, analise:

[I] A encapsulao garante que apenas as interfaces


necessrias para interao com o objeto estejam visveis, e
atributos internos no sejam acessveis.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

46

Questes de concursos
[FCC 2012 TRT 11 Regio Analista Judicirio Especialidade
Tecnologia da Informao Questo 48] Sobre Programao
Orientada a Objetos, analise:

[I] A encapsulao garante que apenas as interfaces


necessrias para interao com o objeto estejam visveis, e
atributos internos no sejam acessveis.

Gabarito: CERTO.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

47

Herana

a propriedade dos objetos que permite a criao de uma


hierarquia entre eles

Onde os descendentes herdam o acesso ao cdigo e estruturas


de dados dos seus ancestrais

A POO permite que classes herdem estado e comportamento


comumente utilizados de outras classes
Nomenclatura:

Superclasse

Classe me

a classe a ser herdada

Subclasse

Classe descendente

a classe que herda


rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

48

Herana

Mamfero
Mamfero

Macaco
Macaco

Homem
Homem

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

Baleia
Baleia
49

Herana

Formas de herana:

Extenso

Especificao

Combinao de extenso e especificao

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

50

Herana

Formas de herana:

Extenso

Herana estrita

A subclasse estende a superclasse

Acrescentando novos membros (atributos e/ou mtodos)

A superclasse permanece inalterada

Especificao

A superclasse especifica o que uma subclasse deve oferecer

Mas no implementa nenhuma funcionalidade

Diz-se que apenas a interface (conjunto de especificao dos


mtodos pblicos) da superclasse herdada pela subclasse

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

51

Herana

Formas de herana:

Combinao de extenso e especificao

Herana polimrfica

A subclasse:

Herda:

Interface
Uma implementao padro de pelo menos alguns dos mtodos da
superclasse
Pode:

Redefinir mtodos para especializar o comportamento em relao


ao que oferecido pela superclasse
Oferecer alguma implementao para mtodos que a superclasse
tenha declarado, mas no implementado

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

52

Questes de concursos
[FCC 2012 TRT 11 Regio Analista Judicirio Especialidade
Tecnologia da Informao Questo 48] Sobre Programao
Orientada a Objetos, analise:

[II] O polimorfismo garante que objetos possam herdar


mtodos e atributos de uma superclasse para a gerao de
uma nova classe.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

53

Questes de concursos
[FCC 2012 TRT 11 Regio Analista Judicirio Especialidade
Tecnologia da Informao Questo 48] Sobre Programao
Orientada a Objetos, analise:

[II] O polimorfismo A herana garante que objetos possam


herdar mtodos e atributos de uma superclasse para a
gerao de uma nova classe.

Gabarito: ERRADO.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

54

Questes de concursos
[FCC 2012 TRT 2 Regio Tcnico Judicirio Especialidade
Informtica Questo 42] Em relao s formas de
relacionamentos em herana, considere:

[I] A classe derivada acrescenta atributos e funcionalidades ao


que j fora definido na superclasse.
[II] A classe derivada oferece implementao a funcionalidades
declaradas na superclasse.
[III] A classe derivada implementa especificao e reaproveita
funcionalidades da superclasse.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

55

Questes de concursos
[FCC 2012 TRT 2 Regio Tcnico Judicirio Especialidade
Informtica Questo 42] Os itens I, II e III referem-se,
respectivamente, a

[A] especificao, herana estrita e combinao de


especificao e herana estrita.

[B] herana estrita, herana polimrfica e extenso.

[C] extenso, especificao e herana polimrfica.

[D] herana polimrfica, combinao de especificao e


herana estrita e especificao.
[E] especificao, extenso e contrao.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

56

Questes de concursos
[FCC 2012 TRT 2 Regio Tcnico Judicirio Especialidade
Informtica Questo 42] Os itens I, II e III referem-se,
respectivamente, a

[A] especificao, herana estrita e combinao de


especificao e herana estrita.

[B] herana estrita, herana polimrfica e extenso.

[C] extenso, especificao e herana polimrfica.

[D] herana polimrfica, combinao de especificao e


herana estrita e especificao.
[E] especificao, extenso e contrao.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

57

Questes de concursos
[FCC 2012 TJ/RJ Analista Judicirio Especialidade Anlise de
Sistemas Questo 57] No contexto de programao orientada a
objetos, considere as afirmativas abaixo.

[II] Herana uma relao entre objetos.


[V] Ocorre herana mltipla quando mais de um mtodo
herdado.
[VI] Herana uma relao entre classes.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

58

Questes de concursos
[FCC 2012 TJ/RJ Analista Judicirio Especialidade Anlise de
Sistemas Questo 57] No contexto de programao orientada a
objetos, considere as afirmativas abaixo.

[II] Herana uma relao entre objetos classes.

Gabarito: ERRADO.

[V] Ocorre herana mltipla quando mais de um mtodo


herdado uma subclasse estende de mais de uma superclasse.

Gabarito: ERRADO.

Em Java, no h herana mltipla

[VI] Herana uma relao entre classes.

Gabarito: CERTO.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

59

Questes de concursos
[FCC 2011 TRE/RN Analista Judicirio Especialidade Anlise
de Sistemas Questo 27] So organizadas em uma hierarquia,
com as classes de objetos mais genricas no topo, as quais
legam seus atributos s classes mais especializadas. Trata-se

[A] da hierarquia de herana.

[B] do modelo relacional.

[C] da gesto hierrquica.

[D] do modelo sequencial.

[E] da especificao funcional.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

60

Questes de concursos
[FCC 2011 TRE/RN Analista Judicirio Especialidade Anlise
de Sistemas Questo 27] So organizadas em uma hierarquia,
com as classes de objetos mais genricas no topo, as quais
legam seus atributos s classes mais especializadas. Trata-se

[A] da hierarquia de herana.

[B] do modelo relacional.

[C] da gesto hierrquica.

[D] do modelo sequencial.

[E] da especificao funcional.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

61

Questes de concursos
[CESPE 2012 MPE/PI - Analista Ministerial - Informtica - Cargo
6] A respeito do paradigma de programao orientado a objetos,
julgue os itens que se seguem.

[107] Em um programa orientado a objetos, em que as tarefas


so definidas como comportamento de objetos, cada objeto
criado a partir da instanciao de uma classe onde os seus
mtodos esto implementados.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

62

Questes de concursos
[CESPE 2012 MPE/PI - Analista Ministerial - Informtica - Cargo
6] A respeito do paradigma de programao orientado a objetos,
julgue os itens que se seguem.

[107] Em um programa orientado a objetos, em que as tarefas


so definidas como comportamento de objetos, cada objeto
criado a partir da instanciao de uma classe onde os seus
mtodos esto podem estar implementados.

Gabarito: ERRADO.
Os mtodos podem estar implementados nos ancestrais da
classe

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

63

Polimorfismo

a propriedade de duas ou mais classes derivadas de uma


mesma superclasse responderem a mesma mensagem

Ocorre quando uma subclasse redefine um mtodo existente


na superclasse

Cada uma de uma forma diferente

Mtodos sobrescritos (overriding)

Importante:

Alguns autores no aceitam mtodos sobrecarregados como


polimorfismo
A FCC segue esses autores

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

64

Invocao de mtodos

Formas:

Ligao prematura

Early binding

Acontece quando o mtodo a ser invocado em tempo de


compilao do programa

Ligao tardia

Late binding

Utilizao do conceito de polimorfismo

Acontece quando o mtodo a ser invocado em tempo de


execuo do programa

Tambm conhecido pelos termos:

Dynamic binding

Run-time binding

Virtual Method Invocation

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

65

Questes de concursos
[FCC 2012 TRT 11 Regio Analista Judicirio Especialidade
Tecnologia da Informao Questo 48] Sobre Programao
Orientada a Objetos, analise:

[III] A herana possibilita que distintas operaes na mesma


classe tenham o mesmo nome, desde que alterada a
assinatura.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

66

Questes de concursos
[FCC 2012 TRT 11 Regio Analista Judicirio Especialidade
Tecnologia da Informao Questo 48] Sobre Programao
Orientada a Objetos, analise:

[III] A herana O polimorfismo possibilita que distintas


operaes na mesma classe tenham o mesmo nome, desde
que alterada a assinatura.

Gabarito: ERRADO.
A nica questo em que a FCC concorda que sobrecarga de
mtodos um tipo de polimorfismo

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

67

Questes de concursos
[FCC 2012 TRE/CE Analista Judicirio Especialidade Anlise de
Sistemas Questo 41] Sobre orientao a objetos, INCORRETO
afirmar:

[A] os conceitos de generalizao e especializao da


orientao a objetos esto diretamente associados ao conceito
de herana.
[B] um objeto pode existir mesmo que no exista nenhum
evento a ele associado.
[C] um construtor visa inicializar os atributos e pode ser
executado automaticamente sempre que um novo objeto
criado.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

68

Questes de concursos
[FCC 2012 TRE/CE Analista Judicirio Especialidade Anlise de
Sistemas Questo 41] Sobre orientao a objetos, INCORRETO
afirmar:

[D] polimorfismo o princpio pelo qual duas ou mais classes


derivadas de uma mesma superclasse podem invocar mtodos
que tm a mesma assinatura e mesmo comportamento.
[E] uma classe define o comportamento dos objetos atravs de
seus mtodos, e quais estados ele capaz de manter atravs
de seus atributos.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

69

Questes de concursos
[FCC 2012 TRE/CE Analista Judicirio Especialidade Anlise de
Sistemas Questo 41] Sobre orientao a objetos, INCORRETO
afirmar:

[D] polimorfismo o princpio pelo qual duas ou mais classes


derivadas de uma mesma superclasse podem invocar mtodos
que tm a mesma assinatura e mesmo comportamento, mas
comportamentos distintos.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

70

Questes de concursos
[FCC 2011 TRT 24 Regio Analista Judicirio Especialidade
Tecnologia da Informao Questo 46] Propriedade pela qual
duas ou mais classes derivadas de uma mesma superclasse
podem invocar mtodos que tm a mesma assinatura mas
comportamentos distintos. Trata-se de

[A] polimorfismo.

[B] herana mltipla.

[C] operao agregada.

[D] multiplicidade.

[E] visibilidade.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

71

Questes de concursos
[FCC 2011 TRT 24 Regio Analista Judicirio Especialidade
Tecnologia da Informao Questo 46] Propriedade pela qual
duas ou mais classes derivadas de uma mesma superclasse
podem invocar mtodos que tm a mesma assinatura mas
comportamentos distintos. Trata-se de

[A] polimorfismo.

[B] herana mltipla.

[C] operao agregada.

[D] multiplicidade.

[E] visibilidade.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

72

Questes de concursos
[FCC 2011 TRT 24 Regio Tcnico Judicirio Especialidade
Tecnologia da Informao Questo 53] Em relao orientao
a objetos, considere:

Um dos mecanismos fundamentais na programao orientada


a objetos o conceito de redefinio, que ocorre quando um
mtodo, cuja assinatura j tenha sido especificada, recebe
uma nova definio em uma classe derivada.
A linguagem de programao orientada a objetos deve
suportar o conceito de ligao tardia (late binding), visto que
a definio do mtodo que candidato a ser efetivamente
invocado s ocorre durante a execuo do programa.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

73

Questes de concursos
[FCC 2011 TRT 24 Regio Tcnico Judicirio Especialidade
Tecnologia da Informao Questo 53] O mecanismo de
redefinio, juntamente com o conceito de ligao tardia, a
chave para a utilizao adequada de

[A] polimorfismo.

[B] objeto de classes derivadas.

[C] restries de acesso.

[D] polimorfismo e herana.

[E] dois mtodos de uma mesma classe.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

74

Questes de concursos
[FCC 2011 TRT 24 Regio Tcnico Judicirio Especialidade
Tecnologia da Informao Questo 53] O mecanismo de
redefinio, juntamente com o conceito de ligao tardia, a
chave para a utilizao adequada de

[A] polimorfismo.

[B] objeto de classes derivadas.

[C] restries de acesso.

[D] polimorfismo e herana.

[E] dois mtodos de uma mesma classe.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

75

Referncias

Abstrao:
http://www.dca.fee.unicamp.br/cursos/POOCPP/node6.html
Apostila Java e Orientao a Objetos da Caelum:
http://www.caelum.com.br/download/caelum-java-objetosfj11.pdf
Apostila Java e Orientao a Objetos da K19:
http://www.k19.com.br/downloads/apostilas/java/k19-k11orientacao-a-objetos-em-java
Formas de herana:
http://www.dca.fee.unicamp.br/cursos/PooJava/heranca/form
as.html
HORSTMANN, Cay S. e CORNELL, Gary. Core Java Volume I Fundamentos. 8 Edio. Editora Pearson Prentice Hall, 2010.
rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

76

Referncias

SIERRA, Kate e BATES, Bert. Certificao Sun para


Programador e Desenvolvedor em Java 2 Guia de Estudos. 3
Edio. Editora Alta Books, 2003.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

77

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoaraujo@gmail.com

78