SlideShare una empresa de Scribd logo
MÓDULO 3 INTRODUCCIÓN A JAVA 3.10 POLIMORFISMO 40 HORAS Jesús Muñoz jesus@iluego.com
Contenidos tema 3 – Introducción a Java Comenzamos Bases del lenguaje Java Programación Orientada a Objetos (OOP) Clases y objetos Creando clases Paquetes y java classpath Javabeans Herencia Clases abstractas e interfaces Polimorfismo Clases internas Excepciones Logging Networking 2
3 Contenidos de este tema Polimorfismo Qué es el polimorfismo y por qué Ejemplos de polimorfismo 3 formas de polimorfismo Polimorfismo: ejemplo 1 Polimorfismo: ejemplo 2 Beneficios del polimorfismo 3 formas de polimorfismo
4 Contenidos de este tema Polimorfismo Qué es el polimorfismo y por qué Ejemplos de polimorfismo 3 formas de polimorfismo Polimorfismo: ejemplo 1 Polimorfismo: ejemplo 2 Beneficios del polimorfismo 3 formas de polimorfismo
5 Qué es el polimorfismo y por qué Generalmente, el polimorfismo es la habilidad de tomar diferentes formas Polimorfismo en java: Habilidad de una variable por referencia de cambiar su comportamiento en función de qué instancia de objeto posee Esto permite tratar de la misma manera, como objetos de la superclase, a múltiples objetos de la subclase, seleccionando en cada caso los métodos apropiados (de cada subclase por ejemplo)
6 Contenidos de este tema Polimorfismo Qué es el polimorfismo y por qué Ejemplos de polimorfismo 3 formas de polimorfismo Polimorfismo: ejemplo 1 Polimorfismo: ejemplo 2 Beneficios del polimorfismo 3 formas de polimorfismo
7 Ejemplos de polimorfismo Por ejemplo, dada una clase Vehiculo, la característica de polimorfismo habilita al programador para definir métodos en sus subclases (por ejemplo: Coche, Camion y Moto). No importa qué tipo de Vehiculo sea ya que si llamamos al método getNumeroRuedas() llamará al propio de cada subclase, pero el objeto no deja de ser Vehículo también.
8 Ejemplos de polimorfismo Dada la clase padre Person y las subclases Student, y añadimos otra subclase llamada Employee
9 Ejemplos de polimorfismo En Java podemos crear una referencia que es de tipo superclase, Person, a un objeto de su subclase Student public static main( String[] args ) { Student studentObject = new Student(); Employee employeeObject = new Employee(); Person ref = studentObject; // Person reference points // to a Student object // Calling getName() of the Student object instance String name = ref.getName();
10 Contenidos de este tema Polimorfismo Qué es el polimorfismo y por qué Ejemplos de polimorfismo 3 formas de polimorfismo Polimorfismo: ejemplo 1 Polimorfismo: ejemplo 2 Beneficios del polimorfismo 3 formas de polimorfismo
11 3 formas de polimorfismo Son métodos que no están implementados (body) Para crear un método abstracto sólo es necesaria la declaración del método sin el cuerpo (body) y usando la palabra reservada abstract // Note that there is no body public abstract void someMethod();
12 3 formas de polimorfismo Ahora suponemos que tenemos un método llamado getName() en la superclase Person, y lo sobre-escribimos en ambas subclases (Student y Employee) public class Student { public String getName(){ System.out.println(“Student Name:” + name); return name; } } public class Employee { public String getName(){ System.out.println(“Employee Name:” + name); return name; } }
13 Contenidos de este tema Polimorfismo Qué es el polimorfismo y por qué Ejemplos de polimorfismo 3 formas de polimorfismo Polimorfismo: ejemplo 1 Polimorfismo: ejemplo 2 Beneficios del polimorfismo 3 formas de polimorfismo
14 Polimorfismo: ejemplo 1 Volviendo a nuestro método principal, cuando tratamos de llamar al método getName() del objeto Student Ahora, si asignamos la referencia a un objeto Employee, el método getName() de Employee será llamado.
15 Polimorfismo: ejemplo 1 public static main( String[] args ) { Student studentObject = new Student(); Employee employeeObject = new Employee(); Person ref = studentObject; //Person ref. points to a // Student object // getName() method of Student class is called String temp= ref.getName(); System.out.println( temp ); ref = employeeObject; //Person ref. points to an // Employee object //getName() method of Employee class is called String temp = ref.getName(); System.out.println( temp ); }
16 Contenidos de este tema Polimorfismo Qué es el polimorfismo y por qué Ejemplos de polimorfismo 3 formas de polimorfismo Polimorfismo: ejemplo 1 Polimorfismo: ejemplo 2 Beneficios del polimorfismo 3 formas de polimorfismo
17 Polimorfismo: ejemplo 2 Otro ejemplo que ilustra el polimorfismo es cuando tratamos de pasar la referencia a los métodos como parámetro Suponemos que tenemos un método static llamado printInformation, el cual recibe como parámetro la referencia a un objeto Person public static printInformation( Person p ){ // It will call getName() method of the // actual object instance that is passed p.getName(); }
18 Polimorfismo: ejemplo 2 Podemos pasar una referencia de tipo Employee y un tipo Student al método printInformation, ya que es una subclase de Person. public static main( String[] args ){ Student studentObject = new Student(); Employee employeeObject = new Employee(); printInformation( studentObject ); printInformation( employeeObject ); }
19 Contenidos de este tema Polimorfismo Qué es el polimorfismo y por qué Ejemplos de polimorfismo 3 formas de polimorfismo Polimorfismo: ejemplo 1 Polimorfismo: ejemplo 2 Beneficios del polimorfismo 3 formas de polimorfismo
20 Beneficios del polimorfismo Simplicidad: Si necesitas escribir código que trata con una familia de tipos, el código puede ignorar los detalles específicos de los tipos e interactuar con el tipo base de la familia (jerarquía). Aunque el código piense que está actuando con un objeto de tipo superclase, puede estar operando con un objeto subclase Todo esto hace tu código más fácil de escribir y mucho más fácil de entender por los demás
21 Beneficios del polimorfismo Extensibilidad: Otras subclases pueden ser añadidas después a la familia de tipos, y sus objetos pueden también seguir trabajando con el código existente
22 Contenidos de este tema Polimorfismo Qué es el polimorfismo y por qué Ejemplos de polimorfismo 3 formas de polimorfismo Polimorfismo: ejemplo 1 Polimorfismo: ejemplo 2 Beneficios del polimorfismo 3 formas de polimorfismo
23 3 formas de polimorfismo Sobre-escritura de métodos Métodos de una subclase sobreescriben los métodos de la superclase Sobre-escritura de métodos (impl) abstractos Métodos de la subclase implementan los métodos abstractos de la superclase abstracta (clase abstracta) Sobre-escritura de métodos (impl) a través de interface Métodos de una clase concreta implementan los métodos de la interface
Es importante que recordeis… “Si haces todos los días lo mismo no llegarás más lejos de lo que otras veces has llegado” Adelante!!! Jesús Muñoz jesus@iluego.com

Más contenido relacionado

La actualidad más candente

Flujos y archivo en java
Flujos y archivo en javaFlujos y archivo en java
Flujos y archivo en java
Belen Gonzalez
 
Diagrama de clases
Diagrama de clasesDiagrama de clases
Diagrama de clases
Nedoww Haw
 
Sesion 3 2 modelo de analisis
Sesion 3 2 modelo de analisisSesion 3 2 modelo de analisis
Sesion 3 2 modelo de analisisJulio Pari
 
Unidad 2. modelo entidad relacion
Unidad 2. modelo entidad relacionUnidad 2. modelo entidad relacion
Unidad 2. modelo entidad relacionLuiS YmAY
 
Modelo Orientado A Objetos
Modelo Orientado A ObjetosModelo Orientado A Objetos
Modelo Orientado A Objetos
jose_rob
 
Polimorfismo en Java
Polimorfismo en JavaPolimorfismo en Java
Polimorfismo en Java
ricardomore94
 
Clases y objetos de java
Clases y objetos de javaClases y objetos de java
Clases y objetos de java
innovalabcun
 
Grafos
GrafosGrafos
Grafos
drakul09
 
Estructuras en c++
Estructuras en c++Estructuras en c++
Estructuras en c++
Cesar Oswaldo Osorio Agualongo
 
Poo
PooPoo
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetosale8819
 
Procedimientos almacenados
Procedimientos almacenadosProcedimientos almacenados
Procedimientos almacenados
thalia margarita serrano diaz
 
Unidad 2 Sintaxis en java
Unidad 2 Sintaxis en javaUnidad 2 Sintaxis en java
Unidad 2 Sintaxis en java
Cindy Adriana Bohórquez Santana
 
Ingenieria requisitos
Ingenieria requisitosIngenieria requisitos
Ingenieria requisitosYAMILA GASCON
 
Identificadores palabras clave y tipos Java
Identificadores palabras clave y tipos JavaIdentificadores palabras clave y tipos Java
Identificadores palabras clave y tipos Java
Alexander Ramirez Melendez
 
Transformaciones lineales de la reflexión y rotación en forma matricial en 2D
Transformaciones lineales de la reflexión y rotación en forma matricial en 2DTransformaciones lineales de la reflexión y rotación en forma matricial en 2D
Transformaciones lineales de la reflexión y rotación en forma matricial en 2D
Jlm Udal
 
Metodologiasad 1
Metodologiasad 1Metodologiasad 1
Metodologiasad 1
innovalabcun
 
Método de Ordenamiento Directa (Burbuja)
Método de Ordenamiento Directa (Burbuja)Método de Ordenamiento Directa (Burbuja)
Método de Ordenamiento Directa (Burbuja)
Sarai Gotopo
 

La actualidad más candente (20)

Flujos y archivo en java
Flujos y archivo en javaFlujos y archivo en java
Flujos y archivo en java
 
Diagrama de clases
Diagrama de clasesDiagrama de clases
Diagrama de clases
 
Sesion 3 2 modelo de analisis
Sesion 3 2 modelo de analisisSesion 3 2 modelo de analisis
Sesion 3 2 modelo de analisis
 
Unidad 2. modelo entidad relacion
Unidad 2. modelo entidad relacionUnidad 2. modelo entidad relacion
Unidad 2. modelo entidad relacion
 
Modelo Orientado A Objetos
Modelo Orientado A ObjetosModelo Orientado A Objetos
Modelo Orientado A Objetos
 
Polimorfismo en Java
Polimorfismo en JavaPolimorfismo en Java
Polimorfismo en Java
 
Clases y objetos de java
Clases y objetos de javaClases y objetos de java
Clases y objetos de java
 
Grafos
GrafosGrafos
Grafos
 
Estructuras en c++
Estructuras en c++Estructuras en c++
Estructuras en c++
 
Poo
PooPoo
Poo
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetos
 
Procedimientos almacenados
Procedimientos almacenadosProcedimientos almacenados
Procedimientos almacenados
 
Unidad 2 Sintaxis en java
Unidad 2 Sintaxis en javaUnidad 2 Sintaxis en java
Unidad 2 Sintaxis en java
 
Ingenieria requisitos
Ingenieria requisitosIngenieria requisitos
Ingenieria requisitos
 
Polimorfismo
PolimorfismoPolimorfismo
Polimorfismo
 
Series y sucesiones
Series y sucesionesSeries y sucesiones
Series y sucesiones
 
Identificadores palabras clave y tipos Java
Identificadores palabras clave y tipos JavaIdentificadores palabras clave y tipos Java
Identificadores palabras clave y tipos Java
 
Transformaciones lineales de la reflexión y rotación en forma matricial en 2D
Transformaciones lineales de la reflexión y rotación en forma matricial en 2DTransformaciones lineales de la reflexión y rotación en forma matricial en 2D
Transformaciones lineales de la reflexión y rotación en forma matricial en 2D
 
Metodologiasad 1
Metodologiasad 1Metodologiasad 1
Metodologiasad 1
 
Método de Ordenamiento Directa (Burbuja)
Método de Ordenamiento Directa (Burbuja)Método de Ordenamiento Directa (Burbuja)
Método de Ordenamiento Directa (Burbuja)
 

Destacado

Programacion Orientada a Objetos
Programacion Orientada a ObjetosProgramacion Orientada a Objetos
Programacion Orientada a Objetos
Cesar David Fernandez Grueso
 
Polimorfismos Geneticos
Polimorfismos GeneticosPolimorfismos Geneticos
Polimorfismos Geneticosmauroberta
 
Polimorfismo ppt
Polimorfismo  pptPolimorfismo  ppt
Polimorfismo ppt
ivanvillar7
 
Polimorfismo
PolimorfismoPolimorfismo
Polimorfismo
Martin Soto Zepeda
 
Polimorfismo
PolimorfismoPolimorfismo
PolimorfismoCaveiras
 
Genetica polomorfismos-1
Genetica polomorfismos-1Genetica polomorfismos-1
Genetica polomorfismos-1willy5121
 
Polimorfismo genetico
Polimorfismo geneticoPolimorfismo genetico
Polimorfismo genetico
Javier CEspedes Salas
 
Programación Orientada a Objetos - Resumen
Programación Orientada a Objetos - ResumenProgramación Orientada a Objetos - Resumen
Programación Orientada a Objetos - Resumen
Karlytoz_36
 
Polimorfismo variabilidad
Polimorfismo variabilidadPolimorfismo variabilidad
Polimorfismo variabilidadAlfonso
 
Polimorfismo y Alotropía
Polimorfismo y AlotropíaPolimorfismo y Alotropía
Polimorfismo y Alotropía
Erick Connor
 
Métodos POO
Métodos POOMétodos POO
Métodos POO
1da4
 
Conceptos de POO (Programacion Orientada a Objetos)
Conceptos de POO (Programacion Orientada a Objetos)Conceptos de POO (Programacion Orientada a Objetos)
Conceptos de POO (Programacion Orientada a Objetos)
Josue Lara Reyes
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetosjent46
 
Polimorfismo java
Polimorfismo javaPolimorfismo java
Polimorfismo java
FAFICA
 
Pilares de la POO
Pilares de la POOPilares de la POO
Pilares de la POO
adolfoacosta
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetos
Javier Camacho
 

Destacado (20)

Programacion Orientada a Objetos
Programacion Orientada a ObjetosProgramacion Orientada a Objetos
Programacion Orientada a Objetos
 
Polimorfismos Geneticos
Polimorfismos GeneticosPolimorfismos Geneticos
Polimorfismos Geneticos
 
Polimorfismo ppt
Polimorfismo  pptPolimorfismo  ppt
Polimorfismo ppt
 
Polimorfismo
PolimorfismoPolimorfismo
Polimorfismo
 
Polimorfismo
PolimorfismoPolimorfismo
Polimorfismo
 
Genetica polomorfismos-1
Genetica polomorfismos-1Genetica polomorfismos-1
Genetica polomorfismos-1
 
Polimorfismo genetico
Polimorfismo geneticoPolimorfismo genetico
Polimorfismo genetico
 
Programación Orientada a Objetos - Resumen
Programación Orientada a Objetos - ResumenProgramación Orientada a Objetos - Resumen
Programación Orientada a Objetos - Resumen
 
Polimorfismo
PolimorfismoPolimorfismo
Polimorfismo
 
Polimorfismo variabilidad
Polimorfismo variabilidadPolimorfismo variabilidad
Polimorfismo variabilidad
 
Polimorfismo final
Polimorfismo finalPolimorfismo final
Polimorfismo final
 
Polimorfismo y Alotropía
Polimorfismo y AlotropíaPolimorfismo y Alotropía
Polimorfismo y Alotropía
 
Métodos POO
Métodos POOMétodos POO
Métodos POO
 
Conceptos de POO (Programacion Orientada a Objetos)
Conceptos de POO (Programacion Orientada a Objetos)Conceptos de POO (Programacion Orientada a Objetos)
Conceptos de POO (Programacion Orientada a Objetos)
 
10.Polimorfismo Java
10.Polimorfismo Java10.Polimorfismo Java
10.Polimorfismo Java
 
Polimorfismo
PolimorfismoPolimorfismo
Polimorfismo
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetos
 
Polimorfismo java
Polimorfismo javaPolimorfismo java
Polimorfismo java
 
Pilares de la POO
Pilares de la POOPilares de la POO
Pilares de la POO
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetos
 

Similar a 10 Polimorfismo

Curso Java Inicial 6 Polimorfismo, AbstraccióN E Interfaces
Curso Java Inicial   6 Polimorfismo, AbstraccióN E InterfacesCurso Java Inicial   6 Polimorfismo, AbstraccióN E Interfaces
Curso Java Inicial 6 Polimorfismo, AbstraccióN E Interfaces
Emilio Aviles Avila
 
10 - Slides-Java sesion.pptx
10 - Slides-Java sesion.pptx10 - Slides-Java sesion.pptx
10 - Slides-Java sesion.pptx
AnyeloDavidRodriguez
 
08 Herencia
08   Herencia08   Herencia
08 Herencia
Network Sens
 
Herencia yPolimorfismo
Herencia yPolimorfismoHerencia yPolimorfismo
Herencia yPolimorfismo
José D Pluas
 
Guía polimorfismo
Guía polimorfismoGuía polimorfismo
Guía polimorfismo
lissette_torrealba
 
Herencia
HerenciaHerencia
Herencia
thais0511
 
Tema 8 polimorfismo
Tema 8 polimorfismoTema 8 polimorfismo
Tema 8 polimorfismo
BelenMonse
 
Polimorfismo en Java
Polimorfismo en JavaPolimorfismo en Java
Polimorfismo en Java
Estefani Lucero
 
Programaciom avanzada orientada a objetos
Programaciom avanzada orientada a objetosProgramaciom avanzada orientada a objetos
Programaciom avanzada orientada a objetos
Jonathan Macías
 
03 Oop
03   Oop03   Oop
03 Oop
Network Sens
 
09 Clases Abstractas E Interfaces
09   Clases Abstractas E Interfaces09   Clases Abstractas E Interfaces
09 Clases Abstractas E Interfaces
Network Sens
 
04 Clases Y Objetos
04   Clases Y Objetos04   Clases Y Objetos
04 Clases Y Objetos
Network Sens
 
polimorfismo
polimorfismopolimorfismo
polimorfismo
miguel a
 
Programacion Orientada a Objetos en python
Programacion Orientada a Objetos en pythonProgramacion Orientada a Objetos en python
Programacion Orientada a Objetos en python
wozgeass
 
Python 3
Python 3Python 3
Python 3CHREAR
 
Tema 7 polimorfismo en java
Tema 7 polimorfismo en javaTema 7 polimorfismo en java
Tema 7 polimorfismo en javaFaby Páez
 
Intro Programación Orientada a Objetos
Intro Programación Orientada a ObjetosIntro Programación Orientada a Objetos
Intro Programación Orientada a ObjetosPablo Sepulveda P.
 
Desarrollo de Aplicaciones Web II - Sesión 05 - Evolución de los lenguajes PO...
Desarrollo de Aplicaciones Web II - Sesión 05 - Evolución de los lenguajes PO...Desarrollo de Aplicaciones Web II - Sesión 05 - Evolución de los lenguajes PO...
Desarrollo de Aplicaciones Web II - Sesión 05 - Evolución de los lenguajes PO...Didier Granados
 

Similar a 10 Polimorfismo (20)

Curso Java Inicial 6 Polimorfismo, AbstraccióN E Interfaces
Curso Java Inicial   6 Polimorfismo, AbstraccióN E InterfacesCurso Java Inicial   6 Polimorfismo, AbstraccióN E Interfaces
Curso Java Inicial 6 Polimorfismo, AbstraccióN E Interfaces
 
10 - Slides-Java sesion.pptx
10 - Slides-Java sesion.pptx10 - Slides-Java sesion.pptx
10 - Slides-Java sesion.pptx
 
08 Herencia
08   Herencia08   Herencia
08 Herencia
 
Herencia yPolimorfismo
Herencia yPolimorfismoHerencia yPolimorfismo
Herencia yPolimorfismo
 
Guía polimorfismo
Guía polimorfismoGuía polimorfismo
Guía polimorfismo
 
Clase4_Python-CTIC
Clase4_Python-CTICClase4_Python-CTIC
Clase4_Python-CTIC
 
polimorfismo
polimorfismopolimorfismo
polimorfismo
 
Herencia
HerenciaHerencia
Herencia
 
Tema 8 polimorfismo
Tema 8 polimorfismoTema 8 polimorfismo
Tema 8 polimorfismo
 
Polimorfismo en Java
Polimorfismo en JavaPolimorfismo en Java
Polimorfismo en Java
 
Programaciom avanzada orientada a objetos
Programaciom avanzada orientada a objetosProgramaciom avanzada orientada a objetos
Programaciom avanzada orientada a objetos
 
03 Oop
03   Oop03   Oop
03 Oop
 
09 Clases Abstractas E Interfaces
09   Clases Abstractas E Interfaces09   Clases Abstractas E Interfaces
09 Clases Abstractas E Interfaces
 
04 Clases Y Objetos
04   Clases Y Objetos04   Clases Y Objetos
04 Clases Y Objetos
 
polimorfismo
polimorfismopolimorfismo
polimorfismo
 
Programacion Orientada a Objetos en python
Programacion Orientada a Objetos en pythonProgramacion Orientada a Objetos en python
Programacion Orientada a Objetos en python
 
Python 3
Python 3Python 3
Python 3
 
Tema 7 polimorfismo en java
Tema 7 polimorfismo en javaTema 7 polimorfismo en java
Tema 7 polimorfismo en java
 
Intro Programación Orientada a Objetos
Intro Programación Orientada a ObjetosIntro Programación Orientada a Objetos
Intro Programación Orientada a Objetos
 
Desarrollo de Aplicaciones Web II - Sesión 05 - Evolución de los lenguajes PO...
Desarrollo de Aplicaciones Web II - Sesión 05 - Evolución de los lenguajes PO...Desarrollo de Aplicaciones Web II - Sesión 05 - Evolución de los lenguajes PO...
Desarrollo de Aplicaciones Web II - Sesión 05 - Evolución de los lenguajes PO...
 

Más de Network Sens

J2EE - 01 Arquitectura Web
J2EE - 01   Arquitectura WebJ2EE - 01   Arquitectura Web
J2EE - 01 Arquitectura Web
Network Sens
 
13 Networking
13   Networking13   Networking
13 Networking
Network Sens
 
12 Logging
12   Logging12   Logging
12 Logging
Network Sens
 
11 Excepciones
11   Excepciones11   Excepciones
11 Excepciones
Network Sens
 
07 Javabeans
07   Javabeans07   Javabeans
07 Javabeans
Network Sens
 
01 - Introducción
01 - Introducción01 - Introducción
01 - Introducción
Network Sens
 
05 Creando Clases
05   Creando Clases05   Creando Clases
05 Creando Clases
Network Sens
 
06 Paquetes Y Java Classpath
06   Paquetes Y Java Classpath06   Paquetes Y Java Classpath
06 Paquetes Y Java Classpath
Network Sens
 
02 Bases Del Lenguaje Java
02   Bases Del Lenguaje Java02   Bases Del Lenguaje Java
02 Bases Del Lenguaje Java
Network Sens
 

Más de Network Sens (9)

J2EE - 01 Arquitectura Web
J2EE - 01   Arquitectura WebJ2EE - 01   Arquitectura Web
J2EE - 01 Arquitectura Web
 
13 Networking
13   Networking13   Networking
13 Networking
 
12 Logging
12   Logging12   Logging
12 Logging
 
11 Excepciones
11   Excepciones11   Excepciones
11 Excepciones
 
07 Javabeans
07   Javabeans07   Javabeans
07 Javabeans
 
01 - Introducción
01 - Introducción01 - Introducción
01 - Introducción
 
05 Creando Clases
05   Creando Clases05   Creando Clases
05 Creando Clases
 
06 Paquetes Y Java Classpath
06   Paquetes Y Java Classpath06   Paquetes Y Java Classpath
06 Paquetes Y Java Classpath
 
02 Bases Del Lenguaje Java
02   Bases Del Lenguaje Java02   Bases Del Lenguaje Java
02 Bases Del Lenguaje Java
 

Último

Las lámparas de alta intensidad de descarga o lámparas de descarga de alta in...
Las lámparas de alta intensidad de descarga o lámparas de descarga de alta in...Las lámparas de alta intensidad de descarga o lámparas de descarga de alta in...
Las lámparas de alta intensidad de descarga o lámparas de descarga de alta in...
espinozaernesto427
 
COMPARATIVO DE SUBESTACIONES AIS VS GIS.
COMPARATIVO DE SUBESTACIONES AIS VS GIS.COMPARATIVO DE SUBESTACIONES AIS VS GIS.
COMPARATIVO DE SUBESTACIONES AIS VS GIS.
SERVANDOBADILLOPOLEN
 
Estructuras básicas_ conceptos básicos de programación.pdf
Estructuras básicas_  conceptos básicos de programación.pdfEstructuras básicas_  conceptos básicos de programación.pdf
Estructuras básicas_ conceptos básicos de programación.pdf
ItsSofi
 
DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdfDESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
sarasofiamontezuma
 
Actividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdfActividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdf
NajwaNimri1
 
ACTIVIDAD 2P de Tecnología, 10-7, 2024..
ACTIVIDAD 2P de Tecnología, 10-7, 2024..ACTIVIDAD 2P de Tecnología, 10-7, 2024..
ACTIVIDAD 2P de Tecnología, 10-7, 2024..
IsabelQuintero36
 
absorcion de gases y practicas de laboratorios
absorcion de gases y practicas de laboratoriosabsorcion de gases y practicas de laboratorios
absorcion de gases y practicas de laboratorios
JuanAlvarez413513
 
Estructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdfEstructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdf
cristianrb0324
 
TAREA #6 - RECURSOS INCLUSIVOS POR ANGGIE ARRIAGA
TAREA #6 - RECURSOS INCLUSIVOS POR ANGGIE ARRIAGATAREA #6 - RECURSOS INCLUSIVOS POR ANGGIE ARRIAGA
TAREA #6 - RECURSOS INCLUSIVOS POR ANGGIE ARRIAGA
arriagaanggie50
 
Conceptos básicos de programación 10-5.pdf
Conceptos básicos de programación 10-5.pdfConceptos básicos de programación 10-5.pdf
Conceptos básicos de programación 10-5.pdf
ValeriaAyala48
 
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdfEstructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
IsabellaRubio6
 
SISTESIS RETO4 Grupo4 co-creadores .ppsx
SISTESIS RETO4 Grupo4 co-creadores .ppsxSISTESIS RETO4 Grupo4 co-creadores .ppsx
SISTESIS RETO4 Grupo4 co-creadores .ppsx
tamarita881
 
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdfDesarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
AlejandraCasallas7
 
Catalogo general Ariston Amado Salvador distribuidor oficial Valencia
Catalogo general Ariston Amado Salvador distribuidor oficial ValenciaCatalogo general Ariston Amado Salvador distribuidor oficial Valencia
Catalogo general Ariston Amado Salvador distribuidor oficial Valencia
AMADO SALVADOR
 
Conceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación ProyectoConceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación Proyecto
cofferub
 
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVATECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
LilibethEstupian
 
Conceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. TecnologíaConceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. Tecnología
coloradxmaria
 
Computacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajasComputacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajas
sofiahuarancabellido
 
modelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptxmodelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptx
evelinglilibethpeafi
 
Desarrollo de habilidades de pensamiento (2).pdf
Desarrollo de habilidades de pensamiento (2).pdfDesarrollo de habilidades de pensamiento (2).pdf
Desarrollo de habilidades de pensamiento (2).pdf
samuelvideos
 

Último (20)

Las lámparas de alta intensidad de descarga o lámparas de descarga de alta in...
Las lámparas de alta intensidad de descarga o lámparas de descarga de alta in...Las lámparas de alta intensidad de descarga o lámparas de descarga de alta in...
Las lámparas de alta intensidad de descarga o lámparas de descarga de alta in...
 
COMPARATIVO DE SUBESTACIONES AIS VS GIS.
COMPARATIVO DE SUBESTACIONES AIS VS GIS.COMPARATIVO DE SUBESTACIONES AIS VS GIS.
COMPARATIVO DE SUBESTACIONES AIS VS GIS.
 
Estructuras básicas_ conceptos básicos de programación.pdf
Estructuras básicas_  conceptos básicos de programación.pdfEstructuras básicas_  conceptos básicos de programación.pdf
Estructuras básicas_ conceptos básicos de programación.pdf
 
DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdfDESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLLO DE HABILIDADES DE PENSAMIENTO.pdf
 
Actividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdfActividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdf
 
ACTIVIDAD 2P de Tecnología, 10-7, 2024..
ACTIVIDAD 2P de Tecnología, 10-7, 2024..ACTIVIDAD 2P de Tecnología, 10-7, 2024..
ACTIVIDAD 2P de Tecnología, 10-7, 2024..
 
absorcion de gases y practicas de laboratorios
absorcion de gases y practicas de laboratoriosabsorcion de gases y practicas de laboratorios
absorcion de gases y practicas de laboratorios
 
Estructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdfEstructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdf
 
TAREA #6 - RECURSOS INCLUSIVOS POR ANGGIE ARRIAGA
TAREA #6 - RECURSOS INCLUSIVOS POR ANGGIE ARRIAGATAREA #6 - RECURSOS INCLUSIVOS POR ANGGIE ARRIAGA
TAREA #6 - RECURSOS INCLUSIVOS POR ANGGIE ARRIAGA
 
Conceptos básicos de programación 10-5.pdf
Conceptos básicos de programación 10-5.pdfConceptos básicos de programación 10-5.pdf
Conceptos básicos de programación 10-5.pdf
 
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdfEstructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
 
SISTESIS RETO4 Grupo4 co-creadores .ppsx
SISTESIS RETO4 Grupo4 co-creadores .ppsxSISTESIS RETO4 Grupo4 co-creadores .ppsx
SISTESIS RETO4 Grupo4 co-creadores .ppsx
 
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdfDesarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
 
Catalogo general Ariston Amado Salvador distribuidor oficial Valencia
Catalogo general Ariston Amado Salvador distribuidor oficial ValenciaCatalogo general Ariston Amado Salvador distribuidor oficial Valencia
Catalogo general Ariston Amado Salvador distribuidor oficial Valencia
 
Conceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación ProyectoConceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación Proyecto
 
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVATECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
 
Conceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. TecnologíaConceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. Tecnología
 
Computacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajasComputacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajas
 
modelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptxmodelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptx
 
Desarrollo de habilidades de pensamiento (2).pdf
Desarrollo de habilidades de pensamiento (2).pdfDesarrollo de habilidades de pensamiento (2).pdf
Desarrollo de habilidades de pensamiento (2).pdf
 

10 Polimorfismo

  • 1. MÓDULO 3 INTRODUCCIÓN A JAVA 3.10 POLIMORFISMO 40 HORAS Jesús Muñoz jesus@iluego.com
  • 2. Contenidos tema 3 – Introducción a Java Comenzamos Bases del lenguaje Java Programación Orientada a Objetos (OOP) Clases y objetos Creando clases Paquetes y java classpath Javabeans Herencia Clases abstractas e interfaces Polimorfismo Clases internas Excepciones Logging Networking 2
  • 3. 3 Contenidos de este tema Polimorfismo Qué es el polimorfismo y por qué Ejemplos de polimorfismo 3 formas de polimorfismo Polimorfismo: ejemplo 1 Polimorfismo: ejemplo 2 Beneficios del polimorfismo 3 formas de polimorfismo
  • 4. 4 Contenidos de este tema Polimorfismo Qué es el polimorfismo y por qué Ejemplos de polimorfismo 3 formas de polimorfismo Polimorfismo: ejemplo 1 Polimorfismo: ejemplo 2 Beneficios del polimorfismo 3 formas de polimorfismo
  • 5. 5 Qué es el polimorfismo y por qué Generalmente, el polimorfismo es la habilidad de tomar diferentes formas Polimorfismo en java: Habilidad de una variable por referencia de cambiar su comportamiento en función de qué instancia de objeto posee Esto permite tratar de la misma manera, como objetos de la superclase, a múltiples objetos de la subclase, seleccionando en cada caso los métodos apropiados (de cada subclase por ejemplo)
  • 6. 6 Contenidos de este tema Polimorfismo Qué es el polimorfismo y por qué Ejemplos de polimorfismo 3 formas de polimorfismo Polimorfismo: ejemplo 1 Polimorfismo: ejemplo 2 Beneficios del polimorfismo 3 formas de polimorfismo
  • 7. 7 Ejemplos de polimorfismo Por ejemplo, dada una clase Vehiculo, la característica de polimorfismo habilita al programador para definir métodos en sus subclases (por ejemplo: Coche, Camion y Moto). No importa qué tipo de Vehiculo sea ya que si llamamos al método getNumeroRuedas() llamará al propio de cada subclase, pero el objeto no deja de ser Vehículo también.
  • 8. 8 Ejemplos de polimorfismo Dada la clase padre Person y las subclases Student, y añadimos otra subclase llamada Employee
  • 9. 9 Ejemplos de polimorfismo En Java podemos crear una referencia que es de tipo superclase, Person, a un objeto de su subclase Student public static main( String[] args ) { Student studentObject = new Student(); Employee employeeObject = new Employee(); Person ref = studentObject; // Person reference points // to a Student object // Calling getName() of the Student object instance String name = ref.getName();
  • 10. 10 Contenidos de este tema Polimorfismo Qué es el polimorfismo y por qué Ejemplos de polimorfismo 3 formas de polimorfismo Polimorfismo: ejemplo 1 Polimorfismo: ejemplo 2 Beneficios del polimorfismo 3 formas de polimorfismo
  • 11. 11 3 formas de polimorfismo Son métodos que no están implementados (body) Para crear un método abstracto sólo es necesaria la declaración del método sin el cuerpo (body) y usando la palabra reservada abstract // Note that there is no body public abstract void someMethod();
  • 12. 12 3 formas de polimorfismo Ahora suponemos que tenemos un método llamado getName() en la superclase Person, y lo sobre-escribimos en ambas subclases (Student y Employee) public class Student { public String getName(){ System.out.println(“Student Name:” + name); return name; } } public class Employee { public String getName(){ System.out.println(“Employee Name:” + name); return name; } }
  • 13. 13 Contenidos de este tema Polimorfismo Qué es el polimorfismo y por qué Ejemplos de polimorfismo 3 formas de polimorfismo Polimorfismo: ejemplo 1 Polimorfismo: ejemplo 2 Beneficios del polimorfismo 3 formas de polimorfismo
  • 14. 14 Polimorfismo: ejemplo 1 Volviendo a nuestro método principal, cuando tratamos de llamar al método getName() del objeto Student Ahora, si asignamos la referencia a un objeto Employee, el método getName() de Employee será llamado.
  • 15. 15 Polimorfismo: ejemplo 1 public static main( String[] args ) { Student studentObject = new Student(); Employee employeeObject = new Employee(); Person ref = studentObject; //Person ref. points to a // Student object // getName() method of Student class is called String temp= ref.getName(); System.out.println( temp ); ref = employeeObject; //Person ref. points to an // Employee object //getName() method of Employee class is called String temp = ref.getName(); System.out.println( temp ); }
  • 16. 16 Contenidos de este tema Polimorfismo Qué es el polimorfismo y por qué Ejemplos de polimorfismo 3 formas de polimorfismo Polimorfismo: ejemplo 1 Polimorfismo: ejemplo 2 Beneficios del polimorfismo 3 formas de polimorfismo
  • 17. 17 Polimorfismo: ejemplo 2 Otro ejemplo que ilustra el polimorfismo es cuando tratamos de pasar la referencia a los métodos como parámetro Suponemos que tenemos un método static llamado printInformation, el cual recibe como parámetro la referencia a un objeto Person public static printInformation( Person p ){ // It will call getName() method of the // actual object instance that is passed p.getName(); }
  • 18. 18 Polimorfismo: ejemplo 2 Podemos pasar una referencia de tipo Employee y un tipo Student al método printInformation, ya que es una subclase de Person. public static main( String[] args ){ Student studentObject = new Student(); Employee employeeObject = new Employee(); printInformation( studentObject ); printInformation( employeeObject ); }
  • 19. 19 Contenidos de este tema Polimorfismo Qué es el polimorfismo y por qué Ejemplos de polimorfismo 3 formas de polimorfismo Polimorfismo: ejemplo 1 Polimorfismo: ejemplo 2 Beneficios del polimorfismo 3 formas de polimorfismo
  • 20. 20 Beneficios del polimorfismo Simplicidad: Si necesitas escribir código que trata con una familia de tipos, el código puede ignorar los detalles específicos de los tipos e interactuar con el tipo base de la familia (jerarquía). Aunque el código piense que está actuando con un objeto de tipo superclase, puede estar operando con un objeto subclase Todo esto hace tu código más fácil de escribir y mucho más fácil de entender por los demás
  • 21. 21 Beneficios del polimorfismo Extensibilidad: Otras subclases pueden ser añadidas después a la familia de tipos, y sus objetos pueden también seguir trabajando con el código existente
  • 22. 22 Contenidos de este tema Polimorfismo Qué es el polimorfismo y por qué Ejemplos de polimorfismo 3 formas de polimorfismo Polimorfismo: ejemplo 1 Polimorfismo: ejemplo 2 Beneficios del polimorfismo 3 formas de polimorfismo
  • 23. 23 3 formas de polimorfismo Sobre-escritura de métodos Métodos de una subclase sobreescriben los métodos de la superclase Sobre-escritura de métodos (impl) abstractos Métodos de la subclase implementan los métodos abstractos de la superclase abstracta (clase abstracta) Sobre-escritura de métodos (impl) a través de interface Métodos de una clase concreta implementan los métodos de la interface
  • 24. Es importante que recordeis… “Si haces todos los días lo mismo no llegarás más lejos de lo que otras veces has llegado” Adelante!!! Jesús Muñoz jesus@iluego.com