Documente Academic
Documente Profesional
Documente Cultură
FACULTAD DE INGENIERÍA
CIVIL, SISTEMAS Y ARQUITECTURA
LENGUAJE DE PROGRAMACION
Alumno:
Tello González Giulio.
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
poder emplear 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).
HERENCIA SIMPLE
Java incorpora un mecanismo de herencia simple. Es decir, una clase sólo puede tener
una superclase directa de la cual hereda todos los datos y métodos. Puede existir una
cadena de clases derivadas en que la clase A herede de B y B herede de C, pero no es
posible escribir algo como: class A extends B , C .... // error
La herencia simple consiste en que una clase hereda únicamente de otra. La relación de
herencia hace posible utilizar, desde la instancia, los atributos de la clase padre.
La herencia simple es una relación entre una clase padre (clase base) y una clase hija
(clase derivada) llamada "es un tipo de", que muchas veces se abrevia como isA.
La herencia es simple cuando la clase derivada que estamos considerando sólo tiene una
clase base.
En esta jerarquía cada clase tiene como máximo una sola superclase. La herencia simple
permite que una clase herede las propiedades de su superclase en una cadena
jerárquica.
HERENCIA MULTIPLE
La herencia múltiple permite a una clase tomar funcionalidades de otras clases, como
permitir a una clase llamada MusicoEstudiante heredar de una clase llamada Persona,
una clase llamada Músico, y una clase llamada Trabajador. Esto puede ser abreviado
como MusicoEstudiante : Persona, Músico, Trabajador.
Debido a los problemas con la herencia múltiple, Java no la permite. Pero en realidad
las clases derivadas de varias clases base pueden conseguirse de una forma segura
usando "interfaces".
Una interfaz es parecida a una clase, pero no sólo define la estructura de la clase, sino
también su código real. Una clase base que implementa una interfaz no "hereda"
necesariamente la funcionalidad de la interfaz: sólo promete el uso de su estructura.
Puesto que una clase que implementa una interfaz no hereda de otra clase (y no es un
tipo de la clase base), un programador puede implementar varias interfaces usando la
misma clase.
POLIMORFISMO
La apariencia del código puede ser muy diferente dependiendo del lenguaje que se
utilice, más allá de las obvias diferencias sintácticas.
Un objeto polimórfico es una entidad que puede contener valores de diferentes tipos
durante la ejecución del programa.
Es la capacidad que tienen los objetos de una clase de responder al mismo mensaje o
evento en función de los parámetros utilizados durante su invocación.