SlideShare una empresa de Scribd logo
1 de 5
INSTITUTO TECNOLOGICO DE SALINA CRUZ
MATERIA:
FUNDAMENTOS DE PROGRAMACIÓN
DOCENTE:
MONICA SUSANA ROMAN NAJERA
UNIDAD V:
HERENCIA Y POLIMORFISMO
ACTIVIDAD:
EJEMPLO DE PRÁCTICA
ALUMNA:
CRUZ ELENA ALQUISIREZ PÉREZ
CARRERA:
ING. EN TIC´S
II SEMESTRE GRUPO: E2
SALINA CRUZ, OAXACA A 02/06/2014
Herencia y Polimorfismo en Java
Muchas veces damos por sentado que todos en programación saben y aplican la “herencia”
y el “polimorfismo”, si bien existe una amplia documentación al respecto; que los invito a
buscar en la red, para entender los conceptos y su aplicación un ejemplo sencillo ayudaría
mucho, es por esto que decidí escribir esta pequeña nota.
Bueno iniciemos, utilice el IDE que más le guste o si prefiere con un simple editor, por
comodidad utilizare un IDE pero como todos sabemos es indiferente cual se utilice.
Herencia
A) Creamos un proyecto en nuestro IDE, por ejemplo Herencia y Polimorfismo, tal como lo
muestro en la siguiente imagen:
Este proyecto tiene tres clases:
1. Herencia (clase principal)
2. acepta
3. concede
B) La Herencia en java permite que una clase reciba automáticamente las propiedades y
los métodos de otra clase.
C) La clase “concede” tiene el siguiente código con un solo método:
package conceptos;
public class concede {
public void estoyEscribiendo(){
System.out.println("Escribo una nota");
}
}
D) Ahora vamos a la clase “acepta” que tiene el siguiente código:
package conceptos;
public class acepta extends concede {
}
La clase concede utiliza la palabra clave “extends” eso quiere decir que automáticamente la
clase “acepta” recibe todo lo que le da la clase “concede”.
E) La clase principal crearemos una nueva instancia del tipo “acepta” y nuestra clase
principal quedara de la siguiente manera:
package conceptos;
public class Herencia {
public static void main(String[] args) {
acepta herencia = new acepta();
herencia.estoyEscribiendo();
}
}
Si ustedes están realizando este ejemplo con algún IDE, notaran que al escribir “herencia.”
tenemos disponible el método “estoyEscribiendo”, pero que sucede si la clase “acepta” no
tienen ningún método?, la “magia” está en la palabra “extends” que está en “acepta” que le
permite heredar de la clase “concede”.
En este caso la clase que proporciona el código es la súper clase y la clase que hereda el
código es la sub clase.
Al ejecutar (Run) la clase Herencia obtendremos el siguiente resultado:
Escribo una nota
Polimorfismo
Mediante el polimorfismo podemos variar las propiedades de un objeto que a heredado de
otra clase, veamos esto siguiendo con nuestro código, añado las siguientes líneas :
package conceptos;
public class Herencia {
public static void main(String[] args) {
acepta herencia = new acepta();
concede herenciaDos = new concede();
herencia.estoyEscribiendo();
herenciaDos.estoyEscribiendo();
}
}
Al ejecutar el anterior código nos desplegara dos veces el mensaje:
Escribo una nota
Escribo una nota
Mediante el polimorfismo podemos hacer que la clase “acepta” que es la que extiende a
todas las propiedades de “concede” pueda modificar aquello datos que recibe, en nuestro
ejemplo haremos lo siguiente:
package conceptos;
public class acepta extends concede {
public void estoyEscribiendo(){
System.out.println("Tu también escribes una nota");
}
}
Este es un ejemplo claro de polimorfismo ya que la clase “acepta” esta heredando todo lo
que tiene la clase “concede”, lo que realizamos en esta clase es añadir un polimorfismo y
sobre escribir lo que heredamos, es decir tenemos “estoyEscribiendo” que hemos heredado
pero estamos sobrescribiendo lo que he heredado, en pocas palabras estoy sobrescribiendo
el método que he heredado cambiando el mensaje que voy a desplegar.
Para aclarar un poco más la idea, voy a realizar un cambio en la clase “concede” de tal
manera que quede de la siguiente manera:
package conceptos;
public class concede {
public void estoyEscribiendo(){
System.out.println("Escribo una nota");
}
public void estoyLeyendo(){
System.out.println("Leo un libro");
}
}
Como podrán apreciar he añadido un método mas a la clase concede y la clase principal
quedara de la siguiente manera:
package conceptos;
public class Herencia {
public static void main(String[] args) {
acepta herencia = new acepta();
herencia.estoyEscribiendo();
herencia.estoyLeyendo();
}
}
El resultado de ejecutar el código será lo siguiente:
Tú también escribes una nota
Leo un libro
En este caso podemos comprobar cómo hemos heredado en la clase “acepta” el método
“estoyLeyendo” ya que no existe este método en la clase “acepta” y hemos sobrescrito el
método “estoyEscribiendo”.
Comprobamos por tanto como “acepta” lo que hace es heredar los métodos deja intacto el
método “estoyLeyendo” pero modifica el “estoyEscribiendo” poniendo otro mensaje para
desplegar.

Más contenido relacionado

La actualidad más candente

Proyecto trecera evalución instruiones para suir presetación xD
Proyecto trecera evalución instruiones para suir presetación xDProyecto trecera evalución instruiones para suir presetación xD
Proyecto trecera evalución instruiones para suir presetación xDtalejot
 
Condicionales en php
Condicionales en phpCondicionales en php
Condicionales en phpBrigitt Lopez
 
Como instalar Prolog en Windows
Como instalar Prolog en WindowsComo instalar Prolog en Windows
Como instalar Prolog en WindowsCesarMartinez474
 
Tarea3 tema0 marlene_garcia_
Tarea3 tema0 marlene_garcia_Tarea3 tema0 marlene_garcia_
Tarea3 tema0 marlene_garcia_12459
 
Cómo subir una presentación a slideshared y al blogger
Cómo subir una presentación a slideshared y al blogger Cómo subir una presentación a slideshared y al blogger
Cómo subir una presentación a slideshared y al blogger Ernesto Resendiz
 
Aulaclic
AulaclicAulaclic
Aulaclickelly
 
Convertir de word a power point
Convertir de word a power pointConvertir de word a power point
Convertir de word a power pointAmina Ammor
 
Como utilizar drive y slideshare
Como utilizar drive y slideshareComo utilizar drive y slideshare
Como utilizar drive y slidesharelauraflorez47
 
Ova — Objetos virtuales de aprendizaje
Ova — Objetos virtuales de aprendizajeOva — Objetos virtuales de aprendizaje
Ova — Objetos virtuales de aprendizajehectorruyardi
 
Ova objetos virtuales
Ova objetos virtualesOva objetos virtuales
Ova objetos virtualeshectorruyardi
 

La actualidad más candente (15)

Proyecto trecera evalución instruiones para suir presetación xD
Proyecto trecera evalución instruiones para suir presetación xDProyecto trecera evalución instruiones para suir presetación xD
Proyecto trecera evalución instruiones para suir presetación xD
 
Condicionales en php
Condicionales en phpCondicionales en php
Condicionales en php
 
Como instalar Prolog en Windows
Como instalar Prolog en WindowsComo instalar Prolog en Windows
Como instalar Prolog en Windows
 
Tarea3 tema0 marlene_garcia_
Tarea3 tema0 marlene_garcia_Tarea3 tema0 marlene_garcia_
Tarea3 tema0 marlene_garcia_
 
Portable Ubuntu for Windows 7
Portable Ubuntu for Windows 7Portable Ubuntu for Windows 7
Portable Ubuntu for Windows 7
 
Cómo subir una presentación a slideshared y al blogger
Cómo subir una presentación a slideshared y al blogger Cómo subir una presentación a slideshared y al blogger
Cómo subir una presentación a slideshared y al blogger
 
Convertir a video un pps
Convertir a video un ppsConvertir a video un pps
Convertir a video un pps
 
Aulaclic
AulaclicAulaclic
Aulaclic
 
Convertir de word a power point
Convertir de word a power pointConvertir de word a power point
Convertir de word a power point
 
Como utilizar drive y slideshare
Como utilizar drive y slideshareComo utilizar drive y slideshare
Como utilizar drive y slideshare
 
Ova — Objetos virtuales de aprendizaje
Ova — Objetos virtuales de aprendizajeOva — Objetos virtuales de aprendizaje
Ova — Objetos virtuales de aprendizaje
 
Ova objetos virtuales
Ova objetos virtualesOva objetos virtuales
Ova objetos virtuales
 
Clase 2 ddt 4011
Clase 2 ddt 4011Clase 2 ddt 4011
Clase 2 ddt 4011
 
Parcial 2 access
Parcial 2 accessParcial 2 access
Parcial 2 access
 
Practicas de software
Practicas de softwarePracticas de software
Practicas de software
 

Similar a Practicade herencia y polimorfismo (20)

Herencia y Polimorfismo en Java
Herencia y Polimorfismo en JavaHerencia y Polimorfismo en Java
Herencia y Polimorfismo en Java
 
Unidad 2 tema 1
Unidad 2 tema 1Unidad 2 tema 1
Unidad 2 tema 1
 
Conceptos java
Conceptos javaConceptos java
Conceptos java
 
Guía Herencia PO_O
Guía Herencia PO_OGuía Herencia PO_O
Guía Herencia PO_O
 
Clase numero 6
Clase numero 6Clase numero 6
Clase numero 6
 
Hola mundo
Hola mundoHola mundo
Hola mundo
 
Primeros pasos con google course builder
Primeros pasos con google course builderPrimeros pasos con google course builder
Primeros pasos con google course builder
 
Presentacion de clases en c#
Presentacion de clases en c#Presentacion de clases en c#
Presentacion de clases en c#
 
Informe 1
Informe 1Informe 1
Informe 1
 
Informe 1
Informe 1Informe 1
Informe 1
 
Métodos en Java-Con ejemplos
Métodos en Java-Con ejemplosMétodos en Java-Con ejemplos
Métodos en Java-Con ejemplos
 
Eclipse java
Eclipse javaEclipse java
Eclipse java
 
Eclipse java
Eclipse javaEclipse java
Eclipse java
 
In 12
In 12In 12
In 12
 
Clases
Clases Clases
Clases
 
Unidad 2 tema 2.1
Unidad 2 tema 2.1Unidad 2 tema 2.1
Unidad 2 tema 2.1
 
In 13
In 13In 13
In 13
 
Java 1
Java 1Java 1
Java 1
 
CLASE09-JAVAFOUNDATIONSFINAL.pdf
CLASE09-JAVAFOUNDATIONSFINAL.pdfCLASE09-JAVAFOUNDATIONSFINAL.pdf
CLASE09-JAVAFOUNDATIONSFINAL.pdf
 
In 10
In 10In 10
In 10
 

Más de Elena Perz

Mapa conceptual vi unidad
Mapa conceptual vi unidadMapa conceptual vi unidad
Mapa conceptual vi unidadElena Perz
 
Practicas unidad v
Practicas unidad vPracticas unidad v
Practicas unidad vElena Perz
 
Investigacion v unidad
Investigacion v unidadInvestigacion v unidad
Investigacion v unidadElena Perz
 
Estructura de un metodo
Estructura de un metodoEstructura de un metodo
Estructura de un metodoElena Perz
 
Cruz elena 1-dos
Cruz elena 1-dosCruz elena 1-dos
Cruz elena 1-dosElena Perz
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de controlElena Perz
 
Cruz elena uno-uno
Cruz elena uno-unoCruz elena uno-uno
Cruz elena uno-unoElena Perz
 
Cruz elena uno-dos
Cruz elena uno-dosCruz elena uno-dos
Cruz elena uno-dosElena Perz
 
Cruz elena 2,4-dos
Cruz elena 2,4-dosCruz elena 2,4-dos
Cruz elena 2,4-dosElena Perz
 

Más de Elena Perz (16)

Propuesta
PropuestaPropuesta
Propuesta
 
Mapa conceptual vi unidad
Mapa conceptual vi unidadMapa conceptual vi unidad
Mapa conceptual vi unidad
 
Unidad5
Unidad5Unidad5
Unidad5
 
Practicas unidad v
Practicas unidad vPracticas unidad v
Practicas unidad v
 
Investigacion v unidad
Investigacion v unidadInvestigacion v unidad
Investigacion v unidad
 
Estructura de un metodo
Estructura de un metodoEstructura de un metodo
Estructura de un metodo
 
Practica nun2
Practica nun2Practica nun2
Practica nun2
 
Reporte
ReporteReporte
Reporte
 
Cruz elena 1-dos
Cruz elena 1-dosCruz elena 1-dos
Cruz elena 1-dos
 
Practic as
Practic asPractic as
Practic as
 
Practica 2
Practica 2Practica 2
Practica 2
 
Guia
GuiaGuia
Guia
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de control
 
Cruz elena uno-uno
Cruz elena uno-unoCruz elena uno-uno
Cruz elena uno-uno
 
Cruz elena uno-dos
Cruz elena uno-dosCruz elena uno-dos
Cruz elena uno-dos
 
Cruz elena 2,4-dos
Cruz elena 2,4-dosCruz elena 2,4-dos
Cruz elena 2,4-dos
 

Último

Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxMaritzaRetamozoVera
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADauxsoporte
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.amayarogel
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...JonathanCovena1
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdfDemetrio Ccesa Rayme
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Lourdes Feria
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.José Luis Palma
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxjosetrinidadchavez
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxlclcarmen
 
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxKarlaMassielMartinez
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arteRaquel Martín Contreras
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Carlos Muñoz
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxlclcarmen
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dstEphaniiie
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosCesarFernandez937857
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoFundación YOD YOD
 

Último (20)

Unidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la InvestigaciónUnidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la Investigación
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docx
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDAD
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdf
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
 
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arte
 
Presentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza MultigradoPresentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza Multigrado
 
Repaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia GeneralRepaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia General
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes d
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos Básicos
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativo
 

Practicade herencia y polimorfismo

  • 1. INSTITUTO TECNOLOGICO DE SALINA CRUZ MATERIA: FUNDAMENTOS DE PROGRAMACIÓN DOCENTE: MONICA SUSANA ROMAN NAJERA UNIDAD V: HERENCIA Y POLIMORFISMO ACTIVIDAD: EJEMPLO DE PRÁCTICA ALUMNA: CRUZ ELENA ALQUISIREZ PÉREZ CARRERA: ING. EN TIC´S II SEMESTRE GRUPO: E2 SALINA CRUZ, OAXACA A 02/06/2014
  • 2. Herencia y Polimorfismo en Java Muchas veces damos por sentado que todos en programación saben y aplican la “herencia” y el “polimorfismo”, si bien existe una amplia documentación al respecto; que los invito a buscar en la red, para entender los conceptos y su aplicación un ejemplo sencillo ayudaría mucho, es por esto que decidí escribir esta pequeña nota. Bueno iniciemos, utilice el IDE que más le guste o si prefiere con un simple editor, por comodidad utilizare un IDE pero como todos sabemos es indiferente cual se utilice. Herencia A) Creamos un proyecto en nuestro IDE, por ejemplo Herencia y Polimorfismo, tal como lo muestro en la siguiente imagen: Este proyecto tiene tres clases: 1. Herencia (clase principal) 2. acepta 3. concede B) La Herencia en java permite que una clase reciba automáticamente las propiedades y los métodos de otra clase. C) La clase “concede” tiene el siguiente código con un solo método: package conceptos; public class concede { public void estoyEscribiendo(){ System.out.println("Escribo una nota"); } } D) Ahora vamos a la clase “acepta” que tiene el siguiente código: package conceptos;
  • 3. public class acepta extends concede { } La clase concede utiliza la palabra clave “extends” eso quiere decir que automáticamente la clase “acepta” recibe todo lo que le da la clase “concede”. E) La clase principal crearemos una nueva instancia del tipo “acepta” y nuestra clase principal quedara de la siguiente manera: package conceptos; public class Herencia { public static void main(String[] args) { acepta herencia = new acepta(); herencia.estoyEscribiendo(); } } Si ustedes están realizando este ejemplo con algún IDE, notaran que al escribir “herencia.” tenemos disponible el método “estoyEscribiendo”, pero que sucede si la clase “acepta” no tienen ningún método?, la “magia” está en la palabra “extends” que está en “acepta” que le permite heredar de la clase “concede”. En este caso la clase que proporciona el código es la súper clase y la clase que hereda el código es la sub clase. Al ejecutar (Run) la clase Herencia obtendremos el siguiente resultado: Escribo una nota Polimorfismo
  • 4. Mediante el polimorfismo podemos variar las propiedades de un objeto que a heredado de otra clase, veamos esto siguiendo con nuestro código, añado las siguientes líneas : package conceptos; public class Herencia { public static void main(String[] args) { acepta herencia = new acepta(); concede herenciaDos = new concede(); herencia.estoyEscribiendo(); herenciaDos.estoyEscribiendo(); } } Al ejecutar el anterior código nos desplegara dos veces el mensaje: Escribo una nota Escribo una nota Mediante el polimorfismo podemos hacer que la clase “acepta” que es la que extiende a todas las propiedades de “concede” pueda modificar aquello datos que recibe, en nuestro ejemplo haremos lo siguiente: package conceptos; public class acepta extends concede { public void estoyEscribiendo(){ System.out.println("Tu también escribes una nota"); } } Este es un ejemplo claro de polimorfismo ya que la clase “acepta” esta heredando todo lo que tiene la clase “concede”, lo que realizamos en esta clase es añadir un polimorfismo y sobre escribir lo que heredamos, es decir tenemos “estoyEscribiendo” que hemos heredado pero estamos sobrescribiendo lo que he heredado, en pocas palabras estoy sobrescribiendo el método que he heredado cambiando el mensaje que voy a desplegar. Para aclarar un poco más la idea, voy a realizar un cambio en la clase “concede” de tal manera que quede de la siguiente manera: package conceptos; public class concede { public void estoyEscribiendo(){ System.out.println("Escribo una nota"); }
  • 5. public void estoyLeyendo(){ System.out.println("Leo un libro"); } } Como podrán apreciar he añadido un método mas a la clase concede y la clase principal quedara de la siguiente manera: package conceptos; public class Herencia { public static void main(String[] args) { acepta herencia = new acepta(); herencia.estoyEscribiendo(); herencia.estoyLeyendo(); } } El resultado de ejecutar el código será lo siguiente: Tú también escribes una nota Leo un libro En este caso podemos comprobar cómo hemos heredado en la clase “acepta” el método “estoyLeyendo” ya que no existe este método en la clase “acepta” y hemos sobrescrito el método “estoyEscribiendo”. Comprobamos por tanto como “acepta” lo que hace es heredar los métodos deja intacto el método “estoyLeyendo” pero modifica el “estoyEscribiendo” poniendo otro mensaje para desplegar.