Ligadura estatica y dinamica

Solo disponible en BuenasTareas
  • Páginas : 2 (341 palabras )
  • Descarga(s) : 0
  • Publicado : 9 de marzo de 2011
Leer documento completo
Vista previa del texto
Existen dos tipos de ligadura: Estática y dinámica.

Ligadura estática (o temprana):

• Consiste en realizar el proceso de ligadura en tiempo de compilación según el tipo declarado del objeto alque se manda el mensaje.

• La utilizan (en Java) los métodos de clase y los métodos de instancia que son privados o final (ya que estos últimos no pueden ser sobrescritos).

Ligadura dinámica (otardía):

• Consiste en realizar el proceso de ligadura en tiempo de ejecución siendo la forma dinámica del objeto la que determina la versión del método a ejecutar.

• Se utiliza en todos losmétodos de instancia de Java que no son privados ni final.

Funcionamiento de la Ligadura Dinámica

Resolución de conflictos entre Superclases y Subclases:

• Cuando existe un conflicto entre unmétodo de una superclase y un método de la subclase, el comportamiento correcto es que el método de la subclase sobrescriba al de la superclase.

• Si estamos llamando a un método de la subclase desdeuna variable que ha sido declarada del tipo de la superclase. ¿Cómo se consigue que funcione correctamente?

Ligadura Dinámica:

• Significa que la forma dinámica del objeto determina la versión dela operación que se aplicara.

• Esta capacidad de las operaciones para adaptarse automáticamente a los objetos a los cuales se aplican es una de las propiedades más importantes de la orientación aobjetos.

Características de la Ligadura Dinámica

Puede variar de un lenguaje a otro, pero básicamente presentan unas características comunes. Los métodos que necesitan ligadura dinámica:

•Deben presentar ligadura dinámica solo aquellos que pueden ser redefinidos.

• Por ejemplo, en Java, los métodos de clase y los métodos de instancia privados y/o finales no presentan ligaduradinámica.

• En Java, si no se especifica nada se entenderá que el método puede ser redefinido y por tanto debe presentar ligadura dinámica.

• En otros lenguajes, como Object, Pascal o C++, los...
tracking img