| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/04/2008 14:09:17
|
GustavoLaguna
JavaTeenager
![[Avatar]](/images/avatar/099fe6b0b444c23836c4a5d07346082b.jpg)
Membro desde: 06/04/2006 15:58:47
Mensagens: 162
Localização: Mirassol/SP
Offline
|
Levando em consideração que Dog extends Animal e Animal não possui o método doDogStuff. Esse exemplo não geraria um erro?
No Livro está escrito que o código acima pode ser substituido por este
Fiquei na duvida, mas acho que no primeiro código ele vai procurar na classe Animal e ver que não existe o método portanto msm sendo um objeto Dog ele não vai compilar. Já no seundo ele faz o casting para Dog e dps usa o método.
Fico na espera da ajuda ae galera, abraço
OBS: Estou lendo no computador de arquivos puxados pela internet, são dois arquivos e os dois estavam iguais. Mas pode ocorrer de no livro estar diferente! Portanto, quem tiver o livro e puder verificar... seria de grande ajuda.
This message was edited 1 time. Last update was at 03/04/2008 14:10:45
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/04/2008 14:11:22
|
BrunoCarlo
Virtual Machine Man
Membro desde: 25/11/2004 10:50:06
Mensagens: 633
Localização: Rio de Janeiro
Offline
|
Ola,
Se a classe Animal não tiver o metodo doDogStuff() o primeiro exemplo dará erro de compilação, na certa.
|
Evoluir é preciso
Sempre bom olhar-API |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/04/2008 14:12:41
|
GustavoLaguna
JavaTeenager
![[Avatar]](/images/avatar/099fe6b0b444c23836c4a5d07346082b.jpg)
Membro desde: 06/04/2006 15:58:47
Mensagens: 162
Localização: Mirassol/SP
Offline
|
E o segundo não né? Hum... legal! Agora é só esperar para ver se alguém com o livro tira a dúvida se é erro do livro ou erro do meu arquivo!
Página 115!
This message was edited 1 time. Last update was at 03/04/2008 14:17:19
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/04/2008 14:19:59
|
BrunoCarlo
Virtual Machine Man
Membro desde: 25/11/2004 10:50:06
Mensagens: 633
Localização: Rio de Janeiro
Offline
|
Ola
Dá uma olhada no site do livro... lá tem umas correções pós edição.
|
Evoluir é preciso
Sempre bom olhar-API |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/04/2008 14:52:02
|
paribe
JWizard
![[Avatar]](/images/avatar/4fc848051e4459b8a6afeb210c3664ec.jpg)
Membro desde: 22/08/2004 07:34:33
Mensagens: 2057
Offline
|
Olá ,
fiz o exemplo e precisa fazer o CAST para ver o metodo da classe Dog
pois a referencia do Animal não deixa ver o metodo do Dog.
[code]
public class Animal {
}
//
public class Dog extends Animal {
void doDogStuff(){
System.out.println("Dog");
}
}
//
public class DogTest {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Animal a = new Dog();
Dog d = (Dog) a;
((Dog) a).doDogStuff();
}
}
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/04/2008 15:14:03
|
LPJava
GUJ Hacker
Membro desde: 18/04/2006 12:50:23
Mensagens: 5524
Localização: Bahia/Porto Alegre
Offline
|
qual a sua edicao? se for a edicao 1, realmente está com erro.. mais na edicao 2 que saiu correcoes.. agora se a superclass nao tem o metodo realmente nao tem como compilar ja que tem a regra: "o filho faz no minimo tudo que o pai faz, se o pai tem esse metodo o filho tb nao"
flw!
|
Sun Certified Java Programmer 5.0
Blog:http://www.camilolopes.com
Twitter:www.twitter.com/camilolope
Linkedin: http://br.linkedin.com/in/camilolopes
Curso online OCPJP: http://pro.imasters.com.br/online/cursos/preparatorio-para-certificacao-java-ocjp
Autor livro Guia SCJP & JEE c/ Frameworks: http://blog.camilolopes.com.br/livrosrevistaspalestras/
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/04/2008 15:18:21
|
Javabuntu
GUJ Master
![[Avatar]](/images/avatar/00053f5e11d1fe4e49a221165b39abc9.jpg)
Membro desde: 08/02/2007 17:15:32
Mensagens: 1315
Localização: Brasília
Offline
|
esse erro foi de digitação mesmo...
na verdade ele queria dizer:
o exemplo de cast, agora a variável d chama o método.. e tudo certo....apenas isso ok..
|
SCJP 6
SCJD
SCWCD 5
Itil V2 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/04/2008 15:51:28
|
GustavoLaguna
JavaTeenager
![[Avatar]](/images/avatar/099fe6b0b444c23836c4a5d07346082b.jpg)
Membro desde: 06/04/2006 15:58:47
Mensagens: 162
Localização: Mirassol/SP
Offline
|
Valeu!
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/04/2008 16:30:32
|
paribe
JWizard
![[Avatar]](/images/avatar/4fc848051e4459b8a6afeb210c3664ec.jpg)
Membro desde: 22/08/2004 07:34:33
Mensagens: 2057
Offline
|
Uma duvida por que ????
Exception in thread "main" java.lang.ClassCastException: certificacao.licão_5_1.Animal
at certificacao.licão_5_1.Dog.main(Dog.java:1
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/04/2008 16:38:06
|
BrunoCarlo
Virtual Machine Man
Membro desde: 25/11/2004 10:50:06
Mensagens: 633
Localização: Rio de Janeiro
Offline
|
Opa.. vamos com muita calma..
Errado, pense assim... Dog é um animal mais alguma coisa... agora, não se pode, de forma alguma fazer:
|
Evoluir é preciso
Sempre bom olhar-API |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 03/04/2008 16:50:52
|
Javabuntu
GUJ Master
![[Avatar]](/images/avatar/00053f5e11d1fe4e49a221165b39abc9.jpg)
Membro desde: 08/02/2007 17:15:32
Mensagens: 1315
Localização: Brasília
Offline
|
existe uma regra, o tipo de referência tem que ser igual ou pai, NUNCA filho....
poderia ser
entendeu... nunca uma referência filho pode apontar pra um ojbeto pai... somente o contrário ok...
|
SCJP 6
SCJD
SCWCD 5
Itil V2 |
|
|
 |
|
|