POLIMORFISMO UNIDAD 4.

Slides:



Advertisements
Presentaciones similares
Curso de java básico (scjp)
Advertisements

FUNDAMENTALS OF THE JAVA PROGRAMMING LANGUAGE
Curso de Java Capitulo 7: Continuación Poo Profesor:
Curso de Java Capitulo 7: Conceptos sobre poo Profesor:
Herencia en C#.
Fundamentos de la programación orientada a objetos
POLIMORFISMO "una interfaz, múltiples métodos".
Lenguaje de programación Java
UML 1.4 Peter Emerson Pinchao Solis.
Herencia simple y multiple
Arquitectura CLARO-TECNOTREE
REFERENCIA AL OBJETO DE LA CLASE BASE
Polimorfismo Unidad 4.
Introducción a la Orientación a Objetos
Programación Orientada a Objetos (P.O.O.)
Introducción 1 Puntos Clave –La orientación a objetos representa un cambio radical en los métodos tradicionales de creación de software –Los métodos tradicionales.
La Programación Orientado a Objetos
Inner classes CAPITULO 8.
GENERACIONES DE LENGUAJES DE PROGRAMACIÓN
UNIVERSIDAD LATINA (UNILA) ENCAPSULACION Y HERENCIA
Aplicación del paradigma orientado a objetos
Diseño y programación de
PROGRAMACION ORIENTADA A OBJETOS
HERENCIA.
4.- Orientación a Objetos Justo N. Hidalgo Sanz DEPARTAMENTO DE INGENIERÍA INFORMÁTICA.
Polimorfismo Lenguajes de Programación II Corporación Universitaria del Caribe CECAR.
Introducción a Java II.
Lic. Rosemary Torrico Bascopé
Clases y objetos La unidad fundamental de programación OO son las clases. Conjunto de métodos y semántica Qué se va a hacer POO Clase: que define la implementación.
Introducción a la programación Orientada a objetos
Tema 10: Interfaces Antonio J. Sierra.
1 Herencia en Java Agustín J. González Diseño y Programación Orientados a Objetos.
I NSTITUTO TECNOLOGICO SUPERIOR DE LIBRES INGENIERIA EN SISTEMAS COMPUTACIONALES PROGRAMACION ORIENTADA A OBJETOS ESMERALDA LIMON ESCUTIA REDEFINICION.
UNIDAD 2 CLASES Y OBJETOS. CLASE Elementos cabecera y cuerpo de la clase. Cabecera: aporta información fundamental sobre la clase en sí y constituye de.
Diagramas de Clase Angela Carrillo R..
Capitulo # 4 herencia PROGRAMACION III UNIVERSIDAD
Programación Orientada a Objetos en Java
Introducción a la POO • ¿Qué es la programación orientada a objets (POO)? – Un “paradigma” de programación – Una forma de pensar acerca de los problemas.
Programación orientada a objetos
SCJP SUN CERTIFIED PROGRAMMER FOR JAVA 6. SEMANA DOS ORIENTACION A OBJETOS.
Programación Orientada Objetos
Herencia en POO Eliseo Melgarejo Desarrollo de sistemas Udec.
Programación avanzada en Java Miguel Ángel Corella 23 de Septiembre de 2005.
UNIDAD VI Recursos esenciales de Java LSC. Natalia Rodríguez Castellón.
SCJP SUN CERTIFIED PROGRAMMER FOR JAVA 6
Metodología de Programación Ayudantía 5 lelagos.ublog.cl 2009.
1 Herencia en Java Agustín J. González Diseño y Programación Orientados a Objetos.
Herencia. Introducción La idea básica es poder crear clases basadas en clases ya existentes. Cuando heredamos de una clase existente, estamos re-usando.
Programación Orientada a Objetos (P.O.O.)
Unidad 2.1: INTRODUCCIÓN A LA ORIENTACIÓN A OBJETOS.
PROGRAMACION ORIENTADA A OBJETOS
Programación orientada a objetos
Introducción a la Programación Orientada a Objetos (POO)
Herencia y Clases Abstractas
:: Prof. Yeniffer Peña Programación I Programación Orientada a Objetos Presentación.
Conceptos. -Programación orientada a eventos. -Instancias de clase. -Atributo de los objetos. -Método main, get y set. -Ejemplo de la declaración de.
Universidad Tecnológica de Izúcar de Matamoros Programa Educativo: Tecnologías de la Información Asignatura: Base de datos para aplicaciones Tema: Base.
Programación orientada a objetos Capítulo 9 Algo mas sobre herencias.
PROGRAMACIÓN ORIENTADA A OBJETOS
INSTITUTO TECNOLOGICO DE TEHUACAN Ingeniería en sistemas computacionales Curso de apoyo a la titulación CLASES DE JAVA Diciembre de 2008.
Tipo de relación entre clases Es uno de los aspectos que distinguen el paradigma de orientación a objetos frente a otros paradigmas. Mecanismo que,
Programación Orientada Objetos
La Programación Orientado a Objetos
Clases “ Es una Abstracción de un elemento del mundo real ”
Herencias Conceptos básicos i
Programación orientada a objetos La programación orientada a objetos o POO (OOP según sus siglas en inglés) es un paradigma de programación que usa objetos.
Programación Orientada a Objetos Unidad 5. Los objetos son entidades que combinan estado Contiene toda la información denominados atributos REPASO Cada.
2015-BM5A. Introducción Durante años, los programadores se han dedicado a construir aplicaciones muy parecidas que resolvían una y otra vez los mismos.
Modelado UML Diagrama de Clases
Programación I Clases. Paradigma POO La programación Orientada a objetos (POO) es una forma programar, más cercana a como expresaríamos las cosas en la.
Transcripción de la presentación:

POLIMORFISMO UNIDAD 4

POLIMORFISMO El Polimorfismo es la respuesta distinta frente a una llamada a un método dependiendo de la naturaleza del objeto. Consiste en definir métodos distintos, que comparten el mismo nombre, pero que se aplican a clases diferentes

El polimorfismo es una de las principales aplicaciones de la herencia y supone el principal motivo de las clases abstractas.

Ventaja La principal ventaja del polimorfismo es la reutilizacion de codigo

Asignacion de objetos a variables de su super clase En java, es posible asignar un objeto de una clase a una variable de su superclase. Por ejemplo, dada una variable de tipo Figura Figura f; Es posible asignar a esta variable el objeto Triangulo f =new Triangulo();

A partir de aqui, se puede utilizar la variable para invocar a aquellos metodos del objeto que tambien esten definidos o declarados en la superclase, pero no aquellos que solo existan en la clase a la que pertenece el objeto

Tras la conexión polimorfa únicamente podemos acceder a las operaciones pertenecientes a la clase asociada a la referencia. El resto de operaciones del objeto no son accesibles a través de esta referencia

Variable polimorfica Una variable referencia es polimórfica cuando su tipo de declaración no coincide con el tipo del objeto al que referencia: Figura f1 = new Figura(“Estandar”, “Rojo”); Figura f2 = new Circulo(“Verde”, 5.0); f2 variable polimorfica.

Clases abstractas: A menudo existen clases que sirven para definir un tipo genérico pero que no sentido instanciar (crear objetos de ella). Métodos abstractos: Un método abstracto significa que tiene que ser sobrescrito. No está implementado. Una clase con uno o varios métodos abstractos tiene que ser declarada abstracta. No obstante una clase abstracta no tiene porque tener métodos abstractos.

INTERFACES (herencia múltiple) Los interfaces en Java nos solucionan en parte la no existencia de la herencia múltiple. Los interfaces son un tipo de clase especial que no implementa ninguno de sus métodos. Todos son abstractos. Por tanto no se pueden instanciar.

De los interfaces también se hereda, aunque se suele decir implementa De los interfaces también se hereda, aunque se suele decir implementa. Y se realiza mediante la palabra: implements. Si una clase que hereda de un interface, no implementa todos los métodos de este, deberá ser definida como abstracta.

¿Para qué se utiliza? Para permitir la herencia múltiple (ya que la herencia en Java sólo permite heredar de una sola clase)

Definen un comportamiento (o funcionalidad) genérico, ignorando los aspectos relacionados con su implementación. Las interfaces que implementa una clase se comportan igual que las superclases en lo que respecta al uso del polimorfismo.

Subclase: Necesitemos hacer una especialización de la superclase mediante sobre escritura o añadiendo nuevos métodos. Clase abstracta: Queremos definir un grupo genérico de clases y además se tiene algunos métodos implementados que reutilizar.

Interface: Queremos definir un grupo genérico de clases y no tenemos métodos implementados que reutilizar. O cuando nos veamos forzados por la falta de herencia múltiple en Java.

Interface vs. Clase Abstracta Un interface no puede implementar ningún método. Un interface no forma parte de la jerarquía de clases.

Una clase puede implementar n interfaces pero solo una clase. El objetivo de un método abstracto es forzar una interfaz (API) pero no una implementación

Haremos un interface cuando queramos definir un grupo genérico de clases y no tengamos métodos implementados que reutilizar. O cuando nos veamos forzados por la falta de herencia múltiple en Java.