[Dúvida] Função Virtual!

1 resposta
Leandro-SP

Olá pessoal…
Estou estudando o livro Java Como Programar e estou tendo um bom progresso mas travei na parte de funções virtuais em Java…
Alguém pode me ajudar? Com exemplos ou mesmo teoria sobre o assunto para me ajudar a entender essa parte?
Alguém tem um exemplo simples de função virtual ou outras coisas relacionadas com o assunto?
Fico no aguardo…
Agradeço desde já…
Obrigado
Ass.: Leandro.

1 Resposta

C

Se vc já programou em C++ deve estar se referindo as funções membro virtuais ( que podem ser puras ou não ).
Em Java vc não usa nenhuma palavra chave para definir um metodo ( ou função, como queira ) como virtual, pois em Java, ao contrario de C++, todos os metodos ( salvo os static ) são virtuais quanto ao tipo de Bind ( Java usa sempre Late Bind, com excessão das static que usam Early Bind ), portanto quando a VM for chamar um metodo de uma referencia, ele sempre busca a ultima versão deste metodo, partindo da parte de baixo da hierarquia para cima ( do ultimo filho em direção ao pai ), sempre considerando o Runtime Type da referencia.
Em Java, vc tem funções virtuais puras definido o metodo como abstract, e claro , este metodo faz parte de uma classe também abstract.

Criado 19 de agosto de 2003
Ultima resposta 19 de ago. de 2003
Respostas 1
Participantes 2