Beleza?


Estou fazendo algúns programas para treinamento, e me deparei uma
dúvida relacionada com construtores, herança e chamadas de método
virtual:


Tenho uma classe mãe chamada Empregado, e outra filha Gerente, cada
uma possui um método chamado obterDetalhes() que me retorna valores
diferentes para cada uma das classes (overridden de método).


Quando eu construo um objeto Empregado, faço da seguinte forma:


Empregado  emp = new Empregado();


e para chamar um método dessa classe eu uso o seguinte: 


emp.obterDetalhes();   // obtenho um resultado A


A mesma coisa faço com um objeto da classe Gerente


Gerente ger = new Gerente();
ger.obterDetalhes()    // obtenho um resultado B


O que acontece quando eu construo um objeto da seguinte forma:


Empregado xyz = new Gerente()


Quando eu fizer a chamada do médoto xyz.obterDetalhes(), qual
resultado obterei, resultado A ou B.


Tentei fazer o teste, mas não entendi muito bem o que está
acontecento.


Um abraço para todos!

Flávio Furlan 

_______________________________________________________________________________________________
Yahoo! GeoCities
Tenha seu lugar na Web. Construa hoje mesmo sua home page no Yahoo! GeoCities. É fácil 
e grátis!
http://br.geocities.yahoo.com/

------------------------------ LISTA SOUJAVA ---------------------------- 
http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP 
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
para sair da lista: envie email para [EMAIL PROTECTED] 
-------------------------------------------------------------------------

Responder a