herencia

Páginas: 6 (1269 palabras) Publicado: 10 de diciembre de 2013
Herencia (informática)
Para otros usos de este término, véase Herencia.
En orientación a objetos la herencia es, después de la agregación o composición, el mecanismo más utilizado para alcanzar algunos de los objetivos más preciados en el desarrollo de software como lo son la reutilización y la extensibilidad. A través de ella los diseñadores pueden crear nuevas clases partiendo de una clase ode una jerarquía de clases preexistente (ya comprobadas y verificadas) evitando con ello el rediseño, la modificación y verificación de la parte ya implementada. La herencia facilita la creación de objetos a partir de otros ya existentes e implica que una subclase obtiene todo el comportamiento (métodos) y eventualmente los atributos (variables) de su superclase.
Es la relación entre una clasegeneral y otra clase más específica. Por ejemplo: Si declaramos una clase párrafo derivada de una clase texto, todos los métodos y variables asociadas con la clase texto, son automáticamente heredados por la subclase párrafo.
La herencia es uno de los mecanismos de los lenguajes de programación orientada a objetos basados en clases, por medio del cual una clase se deriva de otra de manera queextiende su funcionalidad. La clase de la que se hereda se suele denominar clase base, clase padre, superclase, clase ancestro (el vocabulario que se utiliza suele depender en gran medida del lenguaje de programación).
En los lenguajes que cuentan con un sistema de tipos fuerte y estrictamente restrictivo con el tipo de datos de las variables, la herencia suele ser un requisito fundamental para poderemplear el Polimorfismo, al igual que un mecanismo que permita decidir en tiempo de ejecución qué método debe invocarse en respuesta a la recepción de un mensaje, conocido como enlace tardío (late binding) o enlace dinámico (dynamic binding).
Índice
  [ocultar] 
1 Ejemplo en Java
2 Clase Abstracta
3 Herencia y ocultación de información
4 Redefinición de métodos
5 Ventajas
6 Estereotiposde herencia
Ejemplo en Java[editar · editar código]
import javax.*;
import javax.swing.JOptionPane;

public class Mamifero{
private int patas;
private String nombre;

public void imprimirPatas(){
JOptionPane.showMessageDialog(null," Tiene " + patas + " patas\n", "Mamifero", JOptionPane.INFORMATION_MESSAGE);
}

public Mamifero(String nombre, int patas){this.nombre = nombre;
this.patas = patas;
}
}

public class Perro extends Mamifero {
public Perro(String nombre){
super(nombre, 4);
}
}

public class Gato extends Mamifero {
public Gato(String nombre){
super(nombre, 4);
}
}

public class CrearPerro {
public static void main(String[] args) {
Perro perrito = newPerro("Pantaleon");
perrito.imprimirPatas(); /*Está en la clase mamífero*/
}
}
Se declaran las clases mamíferos, gato y perro, haciendo que gato y perro sean unos mamíferos (derivados de esta clase), y se ve como a través de ellos se nombra al animal pero así también se accede a patas dándole el valor por defecto para esa especie.
Es importante destacar tres cosas. La primera, es que laherencia no es un mecanismo esencial en el paradigma de programación orientada a objetos; en la mayoría de los lenguajes orientados a objetos basados en prototipos las clases no existen, en consecuencia tampoco existe la herencia y el polimorfismo se logra por otros medios. La segunda, es que el medio preferido para lograr los objetivos de extensibilidad y reutilización es la agregación o composición.La tercera, es que en lenguajes con un sistema de tipos débiles, el polimorfismo se puede lograr sin utilizar la herencia.
Por otra parte y aunque la herencia no es un concepto indispensable en el paradigma de programación orientada a objetos, es mucho más que un mecanismo de los lenguajes basados en clases, porque implica una forma de razonar sobre cómo diseñar ciertas partes de un programa....
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Herencia
  • la herencia
  • la herencia
  • Herencia
  • Herencia
  • Herencia
  • Herencias
  • la herencia

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS