Dúvida em "sobreescrita" de método  XML
Índice dos Fóruns » Certificação Java
Autor Mensagem
TiagoTC
JavaTeenager

Membro desde: 09/02/2008 01:12:58
Mensagens: 189
Offline

Given classes defined in two different files:





What is the result of executing XMLMessage.main ?

A) text
B) Compilation fails.
C) <msg>text</msg>
D) An exception is thrown at runtime

Pergunta 1: o método "getText()" não está sendo sobreescrito, correto?
Pergunta 2: No gabarito, está constando a alternativa B. Porém, eu compilei aqui, separando as duas classes certinho e funcionou normalmente, ou seja, imprimiu <msg>text</msg>
Será que o gabarito está errado mesmo ou em que fiz algo errado?

Obrigado.

Pérola: "Nunca coloque seu celular em um forno de microondas, pois isso faz com que a bateria exploda" - Manuais de telefones celulares
vmsb11
Java Ninja

Membro desde: 25/08/2008 12:35:00
Mensagens: 251
Offline

tb não estou vendo erro no código....
talvez a resposta esteja errada msm....
da onde vc tirou o exercicio????....
andeb
Thread.start()

Membro desde: 17/05/2009 21:01:04
Mensagens: 47
Localização: Blumenau
Offline

Acho que é erro do gabarito mesmo, não vejo motivos pra não compilar, e o método não está sendo sobreescrito mesmo.

"it's not what you know, it's when you know it"
evertonsilvagomesjava
GUJ Master
[Avatar]

Membro desde: 23/08/2009 13:14:01
Mensagens: 1924
Offline

Neste exemplo esta tendo sobreescriçao sim pq nao?

usa pra vc ver Message obj = new XMLMessage();
TiagoTC
JavaTeenager

Membro desde: 09/02/2008 01:12:58
Mensagens: 189
Offline

evertonsilvagomesjava wrote:Neste exemplo esta tendo sobreescriçao sim pq nao?

usa pra vc ver Message obj = new XMLMessage();


Vc quer dizer fazer algo assim?



Aqui não compilou... Eu acho que não é sobreescrita mesmo pois o modificador de acesso do método getText() da classe Message é o default, o que significa que somente as classes do mesmo pacote terão acesso à ele. A classe XMLMessage nem enxerga ele.

Pérola: "Nunca coloque seu celular em um forno de microondas, pois isso faz com que a bateria exploda" - Manuais de telefones celulares
evertonsilvagomesjava
GUJ Master
[Avatar]

Membro desde: 23/08/2009 13:14:01
Mensagens: 1924
Offline

Ah sim...nao reparei a questao do pacote, nao ta tendo sobreescrita mesmo. No teste q eu fiz ta tudo no mesmo pacote
Nykolas Lima
Virtual Machine Man
[Avatar]

Membro desde: 07/07/2008 13:10:41
Mensagens: 606
Offline

O gabarito ta errado.

O método é default sendo assim ele só pode ser sobrescrito por classes do mesmo pacote.

Para que houve sobrescrita teria que ser public ou protected.

Sendo que o protected é parecido com o default, mas ele aceita a herança.

Abraços

Blog: http://nykolaslima.wordpress.com
[WWW]
 
Índice dos Fóruns » Certificação Java
Ir para:   
Powered by JForum 2.1.8 © JForum Team