SlideShare una empresa de Scribd logo
1 de 45
[object Object],TEMA
CAPACIDADES      Conocer  la propiedad de la orientación a objetos: Herencia.      Especificar jerarquía de clases.     Determinar  las diferencias entre Herencia Simple y Herencia Múltiple     Desarrollar aplicaciones en Java de problemas con orientación a objetos: Uso de Herencia.
Herencia. Definición La Herencia es la relación que existe entre dos clases, en la que una clase derivada se crea a partir de otra ya existente, denominada clase base  Es un Mecanismo exclusivo y fundamental de la Programación Orientada a Objetos. Es el principal mecanismo que ayuda a fomentar y facilitar la reutilización del software
Herencia. Definición La relación de herencia se establece entre una nueva clase (referida aquí con el nombre  Nueva ) y una clase ya existente (referida aquí con el nombre  Existente ).
Herencia. Definición ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Herencia. Definición public class  Nueva  extends  Existente  { ..... }  
Tipos de Herencia.    ,[object Object],[object Object]
Tipos de Herencia.    ,[object Object],[object Object],[object Object]
Ejemplo Herencia Múltiple
Herencia. Implementación Java Public class Empleado{ protected String codigo;  protected String apell, nomb, cargo; protected double sueldo; public Empleado(String ncod, String nape, String nnom, String ncar, double nsuel) { codigo=ncod;   apell=nape; nomb=nnom;   cargo=ncar; sueldo=nsuel;   }  
Herencia. Implementación Java. public void aumentasueldo(double porcentaje) { sueldo+=sueldo*porcentaje*100; }   public Strint toString() { return apell+nomb; }  }
Herencia. Implementación Java. public class Ejecutivo extends Empleado { double presupuesto; public Ejecutivo(String ncod, String nap, String nno, String ncar, double nsuel, double npres) { super(ncod, nap, nno, ncar, nsuel, npres); this.presupuesto=npres; }   public void asignapres(double p) { presupuesto=p; } }
Herencia. Implementación Java ........ Ejecutivo jef=new Ejecutivo(“Juan”, “Perez”, “jefe logística”, 2000, 30000); jef.aumentasueldo(); ........ .......
Categoría protected: El especificador de acceso  protected  es equivalente al especificador private con el agregado de que los atributos protegidos de una clase base son accesibles para los miembros de cualquier clase derivada de esa clase.
 
Herencia y Constructores ,[object Object],[object Object],[object Object]
Jerarquía de Clases
La clase Object Object es la raiz de la jerarquía de herencia (de implementación) en Java   Object define un conjunto de métodos útiles, que pueden ser redefinidos en cada clase
Métodos de la clase clase Object ,[object Object],[object Object],[object Object]
Métodos de la clase clase Object ,[object Object],[object Object]
Ejemplo. Métodos clase Object class Punto implements Cloneable { private int x,y; public Punto(int a, int b) { x=a; y=b; } public Punto() { x=0; y=0; }
Ejemplo. Métodos clase Object public Object clone() { Object obj=null; try   { obj=super.clone();   } catch(CloneNotSupportedException ex)   { System.out.println("no se puede duplicar..");   } return obj; } public void trasladar (int dx, int dy) { x=x+dx; y=y+dy; }
Ejemplo. Métodos clase Object public String toString() { String texto="origen: ("+x+", "+y+")"; return texto; } protected void finalize() throws Throwable  { System.out.println("Finalizando objetos..."); } }
Ejemplo. Métodos clase Object public class TestP { public static void main(String[]args)throws IOException { int wa, wb; String temp; BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); PrintStream sal=System.out; sal.println("Ingrese valor x:"); temp=br.readLine(); wa=Integer.parseInt(temp);
Ejemplo. Métodos clase Object sal.println("Ingrese valor y: "); temp=br.readLine(); wb=Integer.parseInt(temp); Punto p1=new Punto(wa,wb); temp=p1.toString(); sal.println(temp);  p1.trasladar(5,5); temp=p1.toString(); sal.println(temp);
Ejemplo. Métodos clase Object sal.println("segundo objeto2"); Punto p2= (Punto) p1.clone();  temp=p2.toString(); sal.println(temp); if (p1.equals(p2)) { sal.println("Objetos iguales.."); } else { sal.println("Objetos Diferentes....."); }
Ejemplo. Métodos clase Object   p1=null; p2=null; // Ejecutar el recolector de basura Runtime runtime = Runtime.getRuntime(); runtime.gc(); runtime.runFinalization();  } }
Java - Herencia APLICACIÓN DESARROLLADA
Enunciado aplicación Herencia Elabore una aplicación java que implemente herencia de figuras geométricas (cuadrado, triángulo y círculo). Implementar métodos y botones para calcular el área y dibujar el objeto correspondiente.
Pasos 1. Diseñe la interfaz visual.
Pasos
Pasos
2. Escribir atributos y métodos de la clase Figura public class Figura {  protected String nombre; protected double area; public Figura(String xno)  {  nombre=xno;  } public String getnonbre()  {  return "Soy un "+nombre;  }    public double getarea()  {  return area;  } }
3. Escribir atributos y métodos de la clase Poligono public class Poligono extends Figura {  protected double largo,ancho; public Poligono(String xn, double a, double b) { super(xn); largo=a; ancho=b;  } public double getlar()  {  return largo;  } public double getan()  {  return ancho;  } }
4. Escribir atributos y métodos de la clase Circulo public class Circulo extends Figura { private double radio; public Circulo(double ra) {  super("circulo");  radio=ra;  }    public void areacir() {  area=3.1415*radio*radio;  }    public void dibujacir(Graphics g) {  int xl, xa;  int tx=(int)radio;  int ty=(int)radio; g.drawOval(300,200,tx,tx); } }
5. Escribir atributos y métodos de la clase Cuadrado public  class Cuadrado extends Poligono { public Cuadrado(double m) { super("cuadrado",m,m); }    public void areacuad()  {   area=largo*ancho;   } public void dibujacuad(Graphics g) { int xl, xa;  xl=(int)largo; g.drawLine(300,200,300+xl,200); g.drawLine(300+xl,200,300+xl,200+xl); g.drawLine(300+xl,200+xl,300,200+xl); g.drawLine(300,200+xl,300,200);  } }
6. Escribir atributos y métodos de la clase Triangulo public class Triangulo extends Poligono { public Triangulo(double p, double q) {  super("triangulo",p,q);  } public void areatrian() {   area=0.5*largo*ancho;   }   public void dibujatrian(Graphics g) { int xl, xa;  xl=(int)largo;  xa=(int)ancho; g.drawLine(300,200,300+xl,200); g.drawLine(300+xl,200,300+xl,200+xl); g.drawLine(300+xl,200+xl,300,200);  } }
7. Definición de Objetos En la clase Frame1 definir los siguientes objetos: Cuadrado c1; Triangulo t1; Circulo cir;
8. Codificar botones void jButton1_actionPerformed(ActionEvent e) { double xa; Graphics g=getGraphics(); xa=Double.valueOf(txtlado.getText()).doubleValue(); c1=new Cuadrado(xa); salida.append(""+c1.getnonbre()); c1.areacuad(); salida.append("Area Cuadrado: "+c1.getarea()); c1.dibujacuad(g); }
8. Codificar botones void jButton2_actionPerformed(ActionEvent e)  { txtlado.setText(""); salida.setText("");  }   void jButton3_actionPerformed(ActionEvent e)  { double xa,xb; Graphics g=getGraphics(); xa=Double.valueOf(txtbase.getText()).doubleValue(); xb=Double.valueOf(txtaltura.getText()).doubleValue(); t1=new Triangulo(xa,xb); salida1.append(""+t1.getnonbre()); t1.areatrian(); salida1.append("Area Triangulo: "+t1.getarea()); t1.dibujatrian(g); }
8. Codificar botones void jButton4_actionPerformed(ActionEvent e) { txtbase.setText(""); txtaltura.setText(""); salida1.setText(""); }   void jButton5_actionPerformed(ActionEvent e)  { double xra; Graphics g=getGraphics(); xra=Double.valueOf(txtradio.getText()).doubleValue(); cir=new Circulo(xra); salida2.append(""+cir.getnonbre()); cir.areacir(); salida2.append("Area Circulo: "+cir.getarea()); cir.dibujacir(g);  }
Ejecución
Ejecución
Ejecución
GRACIAS POR SU ATENCION

Más contenido relacionado

La actualidad más candente

programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetosale8819
 
Programación Orientada a Objetos en Java - Parte I 2015
Programación Orientada a Objetos en Java - Parte I 2015Programación Orientada a Objetos en Java - Parte I 2015
Programación Orientada a Objetos en Java - Parte I 2015Renny Batista
 
Programacion Orientada a Objetos
Programacion Orientada a ObjetosProgramacion Orientada a Objetos
Programacion Orientada a Objetoschutas666
 
Programacion Orientada a Objetos IE
Programacion Orientada a Objetos IEProgramacion Orientada a Objetos IE
Programacion Orientada a Objetos IEKaren Olan
 
Programación orientada a objetos (I)
Programación orientada a objetos (I)Programación orientada a objetos (I)
Programación orientada a objetos (I)Cristian
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a ObjetosUVMVirtual
 
ProgramacióN Orientada A Objetos
ProgramacióN Orientada A ObjetosProgramacióN Orientada A Objetos
ProgramacióN Orientada A ObjetosPatricio Abad
 
Diapositiva estructura de datos unidad 1
Diapositiva estructura de datos unidad 1Diapositiva estructura de datos unidad 1
Diapositiva estructura de datos unidad 1Ezer Ayala Mutul
 
Unidad 2 ProgramacióN Orientada A Objetos (Repaso)
Unidad 2 ProgramacióN Orientada A Objetos (Repaso)Unidad 2 ProgramacióN Orientada A Objetos (Repaso)
Unidad 2 ProgramacióN Orientada A Objetos (Repaso)Sergio Sanchez
 
Jyoc java-cap08 principios poo
Jyoc java-cap08 principios pooJyoc java-cap08 principios poo
Jyoc java-cap08 principios pooJyoc X
 
Metodos Get y Set, finalmente revelados.
Metodos Get y Set, finalmente revelados.Metodos Get y Set, finalmente revelados.
Metodos Get y Set, finalmente revelados.Juan Carlos Espinoza
 
Programación 3: Clases y objetos en Java
Programación 3: Clases y objetos en JavaProgramación 3: Clases y objetos en Java
Programación 3: Clases y objetos en JavaAngel Vázquez Patiño
 
PROGRAMACION ORIENTADA A OBJETO
PROGRAMACION ORIENTADA A OBJETOPROGRAMACION ORIENTADA A OBJETO
PROGRAMACION ORIENTADA A OBJETOAnabel Jaramillo
 
Conceptos poo progra visual
Conceptos poo progra visualConceptos poo progra visual
Conceptos poo progra visualLibertad25
 

La actualidad más candente (20)

Programacion Orientada a Objetos
Programacion Orientada a ObjetosProgramacion Orientada a Objetos
Programacion Orientada a Objetos
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetos
 
Programación Orientada a Objetos en Java - Parte I 2015
Programación Orientada a Objetos en Java - Parte I 2015Programación Orientada a Objetos en Java - Parte I 2015
Programación Orientada a Objetos en Java - Parte I 2015
 
Programacion Orientada a Objetos
Programacion Orientada a ObjetosProgramacion Orientada a Objetos
Programacion Orientada a Objetos
 
Programacion Orientada a Objetos IE
Programacion Orientada a Objetos IEProgramacion Orientada a Objetos IE
Programacion Orientada a Objetos IE
 
Programación orientada a objetos (I)
Programación orientada a objetos (I)Programación orientada a objetos (I)
Programación orientada a objetos (I)
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a Objetos
 
PROGRAMACIÓN ORIENTADA A OBJETOS
PROGRAMACIÓN ORIENTADA A OBJETOSPROGRAMACIÓN ORIENTADA A OBJETOS
PROGRAMACIÓN ORIENTADA A OBJETOS
 
ProgramacióN Orientada A Objetos
ProgramacióN Orientada A ObjetosProgramacióN Orientada A Objetos
ProgramacióN Orientada A Objetos
 
Diapositiva estructura de datos unidad 1
Diapositiva estructura de datos unidad 1Diapositiva estructura de datos unidad 1
Diapositiva estructura de datos unidad 1
 
JAVA ORIENTADO A OBJETOS - INTRODUCCIÓN
JAVA ORIENTADO A OBJETOS - INTRODUCCIÓNJAVA ORIENTADO A OBJETOS - INTRODUCCIÓN
JAVA ORIENTADO A OBJETOS - INTRODUCCIÓN
 
Unidad 2 clases y objetos
Unidad 2 clases y objetosUnidad 2 clases y objetos
Unidad 2 clases y objetos
 
Qué es la poo
Qué es la pooQué es la poo
Qué es la poo
 
Unidad 2 ProgramacióN Orientada A Objetos (Repaso)
Unidad 2 ProgramacióN Orientada A Objetos (Repaso)Unidad 2 ProgramacióN Orientada A Objetos (Repaso)
Unidad 2 ProgramacióN Orientada A Objetos (Repaso)
 
Programación orientada a objetos
Programación orientada a objetosProgramación orientada a objetos
Programación orientada a objetos
 
Jyoc java-cap08 principios poo
Jyoc java-cap08 principios pooJyoc java-cap08 principios poo
Jyoc java-cap08 principios poo
 
Metodos Get y Set, finalmente revelados.
Metodos Get y Set, finalmente revelados.Metodos Get y Set, finalmente revelados.
Metodos Get y Set, finalmente revelados.
 
Programación 3: Clases y objetos en Java
Programación 3: Clases y objetos en JavaProgramación 3: Clases y objetos en Java
Programación 3: Clases y objetos en Java
 
PROGRAMACION ORIENTADA A OBJETO
PROGRAMACION ORIENTADA A OBJETOPROGRAMACION ORIENTADA A OBJETO
PROGRAMACION ORIENTADA A OBJETO
 
Conceptos poo progra visual
Conceptos poo progra visualConceptos poo progra visual
Conceptos poo progra visual
 

Similar a Tema2

Herencia y polimorfismo unidad 5 semestre 2
Herencia y polimorfismo unidad 5 semestre 2Herencia y polimorfismo unidad 5 semestre 2
Herencia y polimorfismo unidad 5 semestre 2K Manuel TN
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetosjent46
 
Net1 oop vbnet
Net1 oop vbnetNet1 oop vbnet
Net1 oop vbnetjhordy2000
 
Iniciando en java en www.fiec.espol.edu.ec
Iniciando en java  en www.fiec.espol.edu.ecIniciando en java  en www.fiec.espol.edu.ec
Iniciando en java en www.fiec.espol.edu.ecSilvana Vargas
 
Lenguajes de Programación: Herencia, Polimorfismo Y UML
Lenguajes de Programación: Herencia, Polimorfismo Y UMLLenguajes de Programación: Herencia, Polimorfismo Y UML
Lenguajes de Programación: Herencia, Polimorfismo Y UMLLuis Fernando Aguas Bucheli
 
Clase2 ejemplosdeenumpoo
Clase2 ejemplosdeenumpooClase2 ejemplosdeenumpoo
Clase2 ejemplosdeenumpoojorg_marq
 
JAVA_BASICO_modo_consola_introduccion.pptx
JAVA_BASICO_modo_consola_introduccion.pptxJAVA_BASICO_modo_consola_introduccion.pptx
JAVA_BASICO_modo_consola_introduccion.pptxFamiliaAyluardo
 
Clasesabstractaseinterfacesalexandraperez 121220190613-phpapp02
Clasesabstractaseinterfacesalexandraperez 121220190613-phpapp02Clasesabstractaseinterfacesalexandraperez 121220190613-phpapp02
Clasesabstractaseinterfacesalexandraperez 121220190613-phpapp02Kositha Jimhiz G
 
Diseño de la logica
Diseño de la logicaDiseño de la logica
Diseño de la logicaanych27
 
Programacion 3 unidad ii
Programacion 3   unidad iiProgramacion 3   unidad ii
Programacion 3 unidad iiIrving Trigo
 
Programacion 3 unidad ii
Programacion 3   unidad iiProgramacion 3   unidad ii
Programacion 3 unidad iiIrving Trigo
 

Similar a Tema2 (20)

Herencia y polimorfismo unidad 5 semestre 2
Herencia y polimorfismo unidad 5 semestre 2Herencia y polimorfismo unidad 5 semestre 2
Herencia y polimorfismo unidad 5 semestre 2
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetos
 
Poo
PooPoo
Poo
 
Net1 oop vbnet
Net1 oop vbnetNet1 oop vbnet
Net1 oop vbnet
 
Iniciando en java en www.fiec.espol.edu.ec
Iniciando en java  en www.fiec.espol.edu.ecIniciando en java  en www.fiec.espol.edu.ec
Iniciando en java en www.fiec.espol.edu.ec
 
Java
JavaJava
Java
 
Lenguajes de Programación: Herencia, Polimorfismo Y UML
Lenguajes de Programación: Herencia, Polimorfismo Y UMLLenguajes de Programación: Herencia, Polimorfismo Y UML
Lenguajes de Programación: Herencia, Polimorfismo Y UML
 
Clase 2 Poo
Clase 2 PooClase 2 Poo
Clase 2 Poo
 
Clase2 ejemplosdeenumpoo
Clase2 ejemplosdeenumpooClase2 ejemplosdeenumpoo
Clase2 ejemplosdeenumpoo
 
9.herencia en java
9.herencia en java9.herencia en java
9.herencia en java
 
Clase 2
Clase 2 Clase 2
Clase 2
 
JAVA_BASICO_modo_consola_introduccion.pptx
JAVA_BASICO_modo_consola_introduccion.pptxJAVA_BASICO_modo_consola_introduccion.pptx
JAVA_BASICO_modo_consola_introduccion.pptx
 
Herencia y polimorfismo
Herencia y polimorfismoHerencia y polimorfismo
Herencia y polimorfismo
 
Herencia - Java
Herencia - JavaHerencia - Java
Herencia - Java
 
Clasesabstractaseinterfacesalexandraperez 121220190613-phpapp02
Clasesabstractaseinterfacesalexandraperez 121220190613-phpapp02Clasesabstractaseinterfacesalexandraperez 121220190613-phpapp02
Clasesabstractaseinterfacesalexandraperez 121220190613-phpapp02
 
Diseño de la logica
Diseño de la logicaDiseño de la logica
Diseño de la logica
 
Clase 2 poo java
Clase 2 poo javaClase 2 poo java
Clase 2 poo java
 
Programacion 3 unidad ii
Programacion 3   unidad iiProgramacion 3   unidad ii
Programacion 3 unidad ii
 
Programacion 3 unidad ii
Programacion 3   unidad iiProgramacion 3   unidad ii
Programacion 3 unidad ii
 
JAVA OO - TEMA 01 - CLASES Y OBJETOS
JAVA OO - TEMA 01 - CLASES Y OBJETOSJAVA OO - TEMA 01 - CLASES Y OBJETOS
JAVA OO - TEMA 01 - CLASES Y OBJETOS
 

Más de guest70285f (6)

Tema6
Tema6Tema6
Tema6
 
Tema5
Tema5Tema5
Tema5
 
Tema4
Tema4Tema4
Tema4
 
Tema3
Tema3Tema3
Tema3
 
Tema1
Tema1Tema1
Tema1
 
Temaswing
TemaswingTemaswing
Temaswing
 

Último

trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudianteAndreaHuertas24
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
Herramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptxHerramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptxRogerPrieto3
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 

Último (15)

trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
Herramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptxHerramientas de corte de alta velocidad.pptx
Herramientas de corte de alta velocidad.pptx
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 

Tema2

  • 1.
  • 2. CAPACIDADES      Conocer la propiedad de la orientación a objetos: Herencia.      Especificar jerarquía de clases.     Determinar las diferencias entre Herencia Simple y Herencia Múltiple     Desarrollar aplicaciones en Java de problemas con orientación a objetos: Uso de Herencia.
  • 3. Herencia. Definición La Herencia es la relación que existe entre dos clases, en la que una clase derivada se crea a partir de otra ya existente, denominada clase base Es un Mecanismo exclusivo y fundamental de la Programación Orientada a Objetos. Es el principal mecanismo que ayuda a fomentar y facilitar la reutilización del software
  • 4. Herencia. Definición La relación de herencia se establece entre una nueva clase (referida aquí con el nombre Nueva ) y una clase ya existente (referida aquí con el nombre Existente ).
  • 5.
  • 6. Herencia. Definición public class Nueva extends Existente { ..... }  
  • 7.
  • 8.
  • 10. Herencia. Implementación Java Public class Empleado{ protected String codigo; protected String apell, nomb, cargo; protected double sueldo; public Empleado(String ncod, String nape, String nnom, String ncar, double nsuel) { codigo=ncod; apell=nape; nomb=nnom; cargo=ncar; sueldo=nsuel; }  
  • 11. Herencia. Implementación Java. public void aumentasueldo(double porcentaje) { sueldo+=sueldo*porcentaje*100; }   public Strint toString() { return apell+nomb; } }
  • 12. Herencia. Implementación Java. public class Ejecutivo extends Empleado { double presupuesto; public Ejecutivo(String ncod, String nap, String nno, String ncar, double nsuel, double npres) { super(ncod, nap, nno, ncar, nsuel, npres); this.presupuesto=npres; }   public void asignapres(double p) { presupuesto=p; } }
  • 13. Herencia. Implementación Java ........ Ejecutivo jef=new Ejecutivo(“Juan”, “Perez”, “jefe logística”, 2000, 30000); jef.aumentasueldo(); ........ .......
  • 14. Categoría protected: El especificador de acceso protected es equivalente al especificador private con el agregado de que los atributos protegidos de una clase base son accesibles para los miembros de cualquier clase derivada de esa clase.
  • 15.  
  • 16.
  • 18. La clase Object Object es la raiz de la jerarquía de herencia (de implementación) en Java Object define un conjunto de métodos útiles, que pueden ser redefinidos en cada clase
  • 19.
  • 20.
  • 21. Ejemplo. Métodos clase Object class Punto implements Cloneable { private int x,y; public Punto(int a, int b) { x=a; y=b; } public Punto() { x=0; y=0; }
  • 22. Ejemplo. Métodos clase Object public Object clone() { Object obj=null; try { obj=super.clone(); } catch(CloneNotSupportedException ex) { System.out.println("no se puede duplicar.."); } return obj; } public void trasladar (int dx, int dy) { x=x+dx; y=y+dy; }
  • 23. Ejemplo. Métodos clase Object public String toString() { String texto="origen: ("+x+", "+y+")"; return texto; } protected void finalize() throws Throwable { System.out.println("Finalizando objetos..."); } }
  • 24. Ejemplo. Métodos clase Object public class TestP { public static void main(String[]args)throws IOException { int wa, wb; String temp; BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); PrintStream sal=System.out; sal.println("Ingrese valor x:"); temp=br.readLine(); wa=Integer.parseInt(temp);
  • 25. Ejemplo. Métodos clase Object sal.println("Ingrese valor y: "); temp=br.readLine(); wb=Integer.parseInt(temp); Punto p1=new Punto(wa,wb); temp=p1.toString(); sal.println(temp); p1.trasladar(5,5); temp=p1.toString(); sal.println(temp);
  • 26. Ejemplo. Métodos clase Object sal.println("segundo objeto2"); Punto p2= (Punto) p1.clone(); temp=p2.toString(); sal.println(temp); if (p1.equals(p2)) { sal.println("Objetos iguales.."); } else { sal.println("Objetos Diferentes....."); }
  • 27. Ejemplo. Métodos clase Object p1=null; p2=null; // Ejecutar el recolector de basura Runtime runtime = Runtime.getRuntime(); runtime.gc(); runtime.runFinalization(); } }
  • 28. Java - Herencia APLICACIÓN DESARROLLADA
  • 29. Enunciado aplicación Herencia Elabore una aplicación java que implemente herencia de figuras geométricas (cuadrado, triángulo y círculo). Implementar métodos y botones para calcular el área y dibujar el objeto correspondiente.
  • 30. Pasos 1. Diseñe la interfaz visual.
  • 31. Pasos
  • 32. Pasos
  • 33. 2. Escribir atributos y métodos de la clase Figura public class Figura { protected String nombre; protected double area; public Figura(String xno) { nombre=xno; } public String getnonbre() { return "Soy un "+nombre; }   public double getarea() { return area; } }
  • 34. 3. Escribir atributos y métodos de la clase Poligono public class Poligono extends Figura { protected double largo,ancho; public Poligono(String xn, double a, double b) { super(xn); largo=a; ancho=b; } public double getlar() { return largo; } public double getan() { return ancho; } }
  • 35. 4. Escribir atributos y métodos de la clase Circulo public class Circulo extends Figura { private double radio; public Circulo(double ra) { super("circulo"); radio=ra; }   public void areacir() { area=3.1415*radio*radio; }   public void dibujacir(Graphics g) { int xl, xa; int tx=(int)radio; int ty=(int)radio; g.drawOval(300,200,tx,tx); } }
  • 36. 5. Escribir atributos y métodos de la clase Cuadrado public class Cuadrado extends Poligono { public Cuadrado(double m) { super("cuadrado",m,m); }   public void areacuad() { area=largo*ancho; } public void dibujacuad(Graphics g) { int xl, xa; xl=(int)largo; g.drawLine(300,200,300+xl,200); g.drawLine(300+xl,200,300+xl,200+xl); g.drawLine(300+xl,200+xl,300,200+xl); g.drawLine(300,200+xl,300,200); } }
  • 37. 6. Escribir atributos y métodos de la clase Triangulo public class Triangulo extends Poligono { public Triangulo(double p, double q) { super("triangulo",p,q); } public void areatrian() { area=0.5*largo*ancho; }   public void dibujatrian(Graphics g) { int xl, xa; xl=(int)largo; xa=(int)ancho; g.drawLine(300,200,300+xl,200); g.drawLine(300+xl,200,300+xl,200+xl); g.drawLine(300+xl,200+xl,300,200); } }
  • 38. 7. Definición de Objetos En la clase Frame1 definir los siguientes objetos: Cuadrado c1; Triangulo t1; Circulo cir;
  • 39. 8. Codificar botones void jButton1_actionPerformed(ActionEvent e) { double xa; Graphics g=getGraphics(); xa=Double.valueOf(txtlado.getText()).doubleValue(); c1=new Cuadrado(xa); salida.append(""+c1.getnonbre()); c1.areacuad(); salida.append("Area Cuadrado: "+c1.getarea()); c1.dibujacuad(g); }
  • 40. 8. Codificar botones void jButton2_actionPerformed(ActionEvent e) { txtlado.setText(""); salida.setText(""); }   void jButton3_actionPerformed(ActionEvent e) { double xa,xb; Graphics g=getGraphics(); xa=Double.valueOf(txtbase.getText()).doubleValue(); xb=Double.valueOf(txtaltura.getText()).doubleValue(); t1=new Triangulo(xa,xb); salida1.append(""+t1.getnonbre()); t1.areatrian(); salida1.append("Area Triangulo: "+t1.getarea()); t1.dibujatrian(g); }
  • 41. 8. Codificar botones void jButton4_actionPerformed(ActionEvent e) { txtbase.setText(""); txtaltura.setText(""); salida1.setText(""); }   void jButton5_actionPerformed(ActionEvent e) { double xra; Graphics g=getGraphics(); xra=Double.valueOf(txtradio.getText()).doubleValue(); cir=new Circulo(xra); salida2.append(""+cir.getnonbre()); cir.areacir(); salida2.append("Area Circulo: "+cir.getarea()); cir.dibujacir(g); }
  • 45. GRACIAS POR SU ATENCION