Ligação tardia

Quando o método a ser invocado é definido durante a compilação do programa, o mecanismo de ligação prematura (early binding) é utilizado.

Para a utilização de polimorfismo, a linguagem de programação orientada a objetos deve suportar o conceito de ligação tardia (late binding), onde a definição do método que será efetivamente invocado só ocorre durante a execução do programa. O mecanismo de ligação tardia também é conhecido pelos termos dynamic binding ou run-time binding.

Em Java, todas as determinações de métodos a executar ocorrem através de ligação tardia exceto em dois casos:

  1. métodos declarados como final não podem ser redefinidos e portanto não são passíveis de invocação polimórfica da parte de seus descendentes; e
  2. métodos declarados como private são implicitamente finais.

© Ivan Luiz Marques Ricarte
DCA/FEEC/UNICAMP

Last modified: Fri Nov 5 14:34:58 EDT 1999