Mapa mental
Herencia
Contenido del mapa
Herencia
Clases derivadas
- La herencia o relación es-un, es la relación existente entre dos clases: una es la derivada que se crea a partir de otra ya existente, denominada base; la nueva hereda de la ya existente; por ejemplo: si existe una clase Figura y se desea crear una clase Triangulo, esta última puede derivarse de la primera pues tendrá en común con ella un estado y un comportamiento, aunque tendrá sus características propias; Triangulo es-un tipo de Figura; otro ejemplo es Programador que es-un tipo de Empleado
Herencia pública
- Una clase derivada no puede acceder a variables y métodos privados de su base; ésta utiliza elementos protegidos para ocultar sus detalles respecto a clases no derivadas de otros paquetes. Para ser visibles desde otro paquete, las clases se declaran con el modificador public; en caso contrario, la clase se restringe al paquete donde se declara
Constructores en herencia
- Un objeto de una derivada consta de la porción correspondiente de su base y de los miembros propios; en consecuencia, al construir un objeto de una clase derivada, primero se construye la parte de su base llamando a su constructor y, a continuación, se inicializan los miembros propios de la derivada
Conversión entre objetos de clase derivada y clase base
- En ciertas sentencias es necesario realizar la conversión de un tipo de dato a otro; por ejemplo: int k = (int)5.8 transforma el número 5.8 de tipo double a int; la conversión también se puede hacer con referencias a objetos; si se implementa el método Object buscarClase() { ... }, y se realiza la sentencia Libro r = buscarClase(), al compilar se produce el mensaje de error tipos incompatibles
Clases no derivables: atributo final
- En el contexto de herencia, la palabra reservada final aplicada a una clase se emplea para impedir que la clase sea derivable; es decir, cuando se requiere que una clase no pueda extenderse, se declara con el modificador final; por ejemplo: se define la clase VideoConsola de tal forma que se evita crear subclases de ella en otras estructuras
Herencia múltiple (no soportada en Java)
- Se trata de un tipo de herencia en la que una clase hereda el estado o estructura y el comportamiento de más de una clase base; en otras palabras, hay herencia múltiple cuando una clase hereda de más de una clase; es decir, existen múltiples clases base, también llamadas ascendientes o padres, para la clase derivada, descendiente o hija
La relación entre clases es-un tipo que indica relación de herencia; por ejemplo: una revista es un tipo de publicación.
La relación es-un también se puede expresar como generalización-especialización ya que es una relación transitiva; así un becario es un tipo de trabajador y éste a su vez es un tipo de persona; por consiguiente, un becario es una persona. Esta manera de relacionar las clases se expresa en Java con la derivación o extensión de clases
Una clase nueva que se crea a partir de una ya existente utilizando la propiedad de la herencia, se denomina clase derivada o subclase. La clase de la cual se hereda se llama clase base o superclase
En Java, la herencia siempre es simple y pública; la clase derivada hereda todos los miembros de la clase base excepto los miembros privados; en el paradigma de la orientación a objetos, para que un lenguaje sea considerado de ese tipo debe soportar la propiedad de la herencia
Información
- Descripción
- Mapa Mental sobre Herencia, creado por Marco Andrés Vázquez García el 23/03/2018.
- Creado por
- Marco Andrés Vázquez García
- Visitas
- 1
- Valoración
Más sobre Herencia y polimorfismo