Herencia java

Page 1

HERENCIA

María Guadalupe García Muñoz|Programar o morir UNIVERSIDAD TECNOLOGICA DEL VALLE DE TOLUCA


Contenido INDICE DE IMAGENES .......................................................................................................................... 1 INTRODUCCION ................................................................................................................................... 2 DOCUMENTACION DE CODIGO ........................................................................................................... 3 PRINCIPAL ........................................................................................................................................ 3 CLASE SAGA ..................................................................................................................................... 8 CLASE TRILOGIA............................................................................................................................. 14 CAPTURAS DE PANTALLA .................................................................................................................. 20 PRIMERO MENU ........................................................................................................................ 20 SEGUNDO MENU ....................................................................................................................... 20 TRILOGIAS.................................................................................................................................. 21 SAGAS ........................................................................................................................................ 24

INDICE DE IMAGENES Captura de pantalla 1 ....................................................................................................................... 20 Captura de pantalla 2 ....................................................................................................................... 20 Captura de pantalla 3 ....................................................................................................................... 21 Captura de pantalla 4 ........................................................................................................................ 21 Captura de pantalla 5 ........................................................................................................................ 22 Captura de pantalla 6 ........................................................................................................................ 22 Captura de pantalla 7 ........................................................................................................................ 23 Captura de pantalla 8 ........................................................................................................................ 24 Captura de pantalla 9 ........................................................................................................................ 24 Captura de pantalla 10 ...................................................................................................................... 25 Captura de pantalla 11 ...................................................................................................................... 25 Captura de pantalla 12 ...................................................................................................................... 26

MARÍA GUADALUPE GARCÍA MUÑOZ|PROGRAMAR O MORIR

1


INTRODUCCION En orientación a objetos la herencia es, después de la agregación o composición, el mecanismo más utilizado para alcanzar algunos de los objetivos más preciados en el desarrollo de software como lo son la reutilización y la extensibilidad. A través de ella los diseñadores pueden crear nuevas clases partiendo de una clase o de una jerarquía de clases preexistente (ya comprobadas y verificadas) evitando con ello el rediseño, la modificación y verificación de la parte ya implementada. La herencia facilita la creación de objetos a partir de otros ya existentes e implica que una subclase obtiene todo el comportamiento (métodos) y eventualmente los atributos (variables) de su superclase. Es la relación entre una clase general y otra clase más específica. Por ejemplo: Si declaramos una clase párrafo derivada de una clase texto, todos los métodos y variables asociadas con la clase texto, son automáticamente heredados por la subclase párrafo. La herencia es uno de los mecanismos de los lenguajes de programación orientada a objetos basados en clases, por medio del cual una clase se deriva de otra de manera que extiende su funcionalidad. La clase de la que se hereda se suele denominar clase base, clase padre, superclase, clase ancestro (el vocabulario que se utiliza suele depender en gran medida del lenguaje de programación). A continuación presento un programa basado en LIBROS con dos clases una llama TRILOGIA y la segunda llamada SAGA y sus atributos y métodos correspondientes, también las capturas de pantalla del programa funcionando y al final conclusiones.

MARÍA GUADALUPE GARCÍA MUÑOZ|PROGRAMAR O MORIR

2


DOCUMENTACION DE CODIGO PRINCIPAL package librosmggm; import java.util.*;

public class LIBROSMGGM {

public static void main(String[] args) {

int opcion1; int opcion2; //Menu para elegir las dos primeras opciones (Clases padre) Scanner teclado = new Scanner(System.in); System.out.println("Opcion Libros"); System.out.println("1-Trilogia"); System.out.println("2-Saga"); System.out.println("Seleccione opcion: "); opcion1 = teclado.nextInt(); //Si se selecciona la opcion 1 imprimirá lo siguente if(opcion1 == 1){ System.out.println("Seleccion trilogia: "); System.out.println("1- Los juegos del hambre"); System.out.println("2- Delirium"); System.out.println("3 -Divergente"); System.out.println("4- El señor de los anillos"); System.out.println("5- Cincuentas sombras de Grey"); opcion2 = teclado.nextInt(); //Switch para poder mostrar cada opcion dependiendo de lo que se elija (Clases hijo)

MARÍA GUADALUPE GARCÍA MUÑOZ|PROGRAMAR O MORIR

3


switch(opcion2){ case 1: System.out.println("Los juegos del hambre "); trilogia op = new THG(); op.titulo(); op.autor(); op.genero(); op.personaje();

break; case 2: System.out.println("Delirium: "); trilogia opd = new delirium(); opd.titulo(); opd.autor(); opd.genero(); opd.personaje(); break; case 3: System.out.println("Divergente: "); trilogia opt = new divergent(); opt.titulo(); opt.autor(); opt.genero(); opt.personaje(); break; case 4: System.out.println("El señor de los anillos: "); MARÍA GUADALUPE GARCÍA MUÑOZ|PROGRAMAR O MORIR

4


trilogia opc = new lordring(); opc.titulo(); opc.autor(); opc.genero(); opc.personaje(); break; case 5: System.out.println("Cincuenta sombras de Grey: "); trilogia opf = new grey(); opf.titulo(); opf.autor(); opf.genero(); opf.personaje(); break; default: System.out.println("Opcion no valida, eliga otra opcion."); break; } }else if(opcion1 == 2){ //Si la opcion fue dos del menu principal entrara a mostrar el siguente menu (Clase hijo) System.out.println("Seleccion Sagas"); System.out.println("1- Harry Potter"); System.out.println("2- Crepusculo"); System.out.println("3- Cazadores de Sombras"); System.out.println("4- Vampire Academic"); System.out.println("5.- Hush Hush"); opcion2 = teclado.nextInt();

MARÍA GUADALUPE GARCÍA MUÑOZ|PROGRAMAR O MORIR

5


switch(opcion2){ case 1: System.out.println("Harry Potter"); saga opu = new hp(); opu.nombre(); opu.autor(); opu.libros(); opu.estrellas(); break; case 2: System.out.println("Crepusculo"); saga opd = new twl(); opd.nombre(); opd.autor(); opd.libros(); opd.estrellas(); break; case 3: System.out.println("Cazadores de sombras"); saga opt = new shadow(); opt.nombre(); opt.autor(); opt.libros(); opt.estrellas(); break; case 4: System.out.println("Vampire Academic"); saga opc = new vampire(); MARÍA GUADALUPE GARCÍA MUÑOZ|PROGRAMAR O MORIR

6


opc.nombre(); opc.autor(); opc.libros(); opc.estrellas(); break; case 5: System.out.println("Hush Hush"); saga opf = new hh(); opf.nombre(); opf.autor(); opf.libros(); opf.estrellas(); break; default: System.out.println("Opcion no valida, seleccione otra opcion."); break; } } else{ System.out.print("Esta opcion no es valida, seleccione otra opcion"); }

} }

MARÍA GUADALUPE GARCÍA MUÑOZ|PROGRAMAR O MORIR

7


CLASE SAGA package librosmggm;

public class saga {

//Variables Universales de la clase padre saga public String nombre; public String autor; public int libros; public String puntuacion; //Metodos de la clase padre saga public void nombre(){} public void autor(){} public void libros(){} public void estrellas(){} } //Clase Hijo hp class hp extends saga{

//Metodos de la clase hijo hp @Override public void nombre(){ nombre="Harry Potter"; System.out.println("Nombre: "+nombre); } @Override public void autor(){

MARÍA GUADALUPE GARCÍA MUÑOZ|PROGRAMAR O MORIR

8


autor="J.K.Rowling"; System.out.println("Autor: "+autor); } @Override public void libros(){ libros=6; System.out.println("Numero de tomos: "+libros); } @Override public void estrellas(){ puntuacion="Cinco de cinco"; System.out.println("Puntuacion: "+puntuacion); } } //Clase Hijo twl class twl extends saga{

//Metodos de la clase hijo twl @Override public void nombre(){ nombre="Crepusculo"; System.out.println("Nombre: "+nombre); } @Override public void autor(){ autor="Meyer"; System.out.println("Autor: "+autor); } MARÍA GUADALUPE GARCÍA MUÑOZ|PROGRAMAR O MORIR

9


@Override public void libros(){ libros=4; System.out.println("Numero de tomos: "+libros); } @Override public void estrellas(){ puntuacion="Cuatro de cinco"; System.out.println("Puntuacion: "+puntuacion); } } //Clase Hijo class shadow extends saga{

//Metodos de la clase hijo shadow @Override public void nombre(){ nombre="Cazadores de sombras"; System.out.println("Nombre: "+nombre); } @Override public void autor(){ autor="Cassandra Clare"; System.out.println("Autor: "+autor); } @Override public void libros(){ libros=6; MARÍA GUADALUPE GARCÍA MUÑOZ|PROGRAMAR O MORIR

10


System.out.println("Numero de tomos: "+libros); } @Override public void estrellas(){ puntuacion="Cinco de cinco"; System.out.println("Puntuacion: "+puntuacion); } } //Clase Hijo vampire class vampire extends saga{

//Metodos de la clase hijo vampire @Override public void nombre(){ nombre="Vampire Academic"; System.out.println("Nombre: "+nombre); } @Override public void autor(){ autor="J.K.Rowling"; System.out.println("Autor: "+autor); } @Override public void libros(){ libros=8; System.out.println("Numero de tomos: "+libros); } @Override MARÍA GUADALUPE GARCÍA MUÑOZ|PROGRAMAR O MORIR

11


public void estrellas(){ puntuacion="Tres de cinco"; System.out.println("Puntuacion: "+puntuacion); } } //Clase Hijo hh class hh extends saga{

//Metodos de la clase hijo hh @Override public void nombre(){ nombre="Hush Hush"; System.out.println("Nombre: "+nombre); } @Override public void autor(){ autor="Richelle Mead"; System.out.println("Autor: "+autor); } @Override public void libros(){ libros=4; System.out.println("Numero de tomos: "+libros); } @Override public void estrellas(){ puntuacion="Dos de cinco"; System.out.println("Puntuacion: "+puntuacion); MARÍA GUADALUPE GARCÍA MUÑOZ|PROGRAMAR O MORIR

12


} }

MARÍA GUADALUPE GARCÍA MUÑOZ|PROGRAMAR O MORIR

13


CLASE TRILOGIA package librosmggm;

import java.util.Scanner;

public class trilogia { Scanner in = new Scanner(System.in); //Variables para los metodos de la clase padre trilogia public String titulo; public String autor; public String genero; public String personaje;

//Metodos del padre trilogia public void titulo(){} public void autor(){} public void genero(){} public void personaje(){}

}

//Clase hijo llamada THG class THG extends trilogia{ //Metodos del hijo THG @Override

MARÍA GUADALUPE GARCÍA MUÑOZ|PROGRAMAR O MORIR

14


public void titulo(){ titulo="Los juegos del hambre"; System.out.println("Titulo: "+titulo); } @Override public void autor(){ autor="Suzane Collins"; System.out.println("Autor "+autor); } @Override public void genero(){ genero="Utipico/Drama"; System.out.println("Genero: "+genero); } @Override public void personaje(){ personaje="Katnnis Everdeen"; System.out.println("Personaje(s) principal(es):"+personaje); }

} //Clase hijo delirium class delirium extends trilogia{ //Metodos del hijo delirium @Override public void titulo(){ titulo="Delirium"; System.out.println("Titulo: "+titulo); MARÍA GUADALUPE GARCÍA MUÑOZ|PROGRAMAR O MORIR

15


} @Override public void autor(){ autor="Lauren Olive"; System.out.println("Autor "+autor); } @Override public void genero(){ genero="Utipico/Romance"; System.out.println("Genero: "+genero); } @Override public void personaje(){ personaje="Lena Haloway"; System.out.println("Personaje(s) principal(es):"+personaje); }

} //Clase hijo diverget class divergent extends trilogia{ //Metodos del hijo divergent @Override public void titulo(){ titulo="Divergente"; System.out.println("Titulo: "+titulo); } @Override public void autor(){ MARÍA GUADALUPE GARCÍA MUÑOZ|PROGRAMAR O MORIR

16


autor="Veronica Roth"; System.out.println("Autor "+autor); } @Override public void genero(){ genero="Utipico/Accion"; System.out.println("Genero: "+genero); } @Override public void personaje(){ personaje="Lena Haloway"; System.out.println("Personaje(s) principal(es):"+personaje); }

} //Clase hijo lordring class lordring extends trilogia{ //Metodos del hijo lordring @Override public void titulo(){ titulo="El señor de los anillos"; System.out.println("Titulo: "+titulo); } @Override public void autor(){ autor="J.R.R Tolkien"; System.out.println("Autor "+autor); } MARÍA GUADALUPE GARCÍA MUÑOZ|PROGRAMAR O MORIR

17


@Override public void genero(){ genero="Novela/FantasiaEpica"; System.out.println("Genero: "+genero); } @Override public void personaje(){ personaje="Frodo,Aragorn,Legolas,Elrond,Gandalf"; System.out.println("Personaje(s) principal(es):"+personaje); }

} //Clase hijo grey class grey extends trilogia{ //Metodos de la clase hijo grey @Override public void titulo(){ titulo="Cincuenta sombras de Grey"; System.out.println("Titulo: "+titulo); } @Override public void autor(){ autor="E.L James"; System.out.println("Autor "+autor); } @Override public void genero(){ genero="Novela/Erotica"; MARÍA GUADALUPE GARCÍA MUÑOZ|PROGRAMAR O MORIR

18


System.out.println("Genero: "+genero); } @Override public void personaje(){ personaje="Anastasia Steele y Christian Grey"; System.out.println("Personaje(s) principal(es):"+personaje); }

}

MARÍA GUADALUPE GARCÍA MUÑOZ|PROGRAMAR O MORIR

19


CAPTURAS DE PANTALLA PRIMERO MENU

Captura de pantalla 1

SEGUNDO MENU

Captura de pantalla 2g

MARÍA GUADALUPE GARCÍA MUÑOZ|PROGRAMAR O MORIR

20


TRILOGIAS

Captura de pantalla 3

Captura de pantalla 4

MARÍA GUADALUPE GARCÍA MUÑOZ|PROGRAMAR O MORIR

21


Captura de pantalla 5

Captura de pantalla 6

MARÍA GUADALUPE GARCÍA MUÑOZ|PROGRAMAR O MORIR

22


Captura de pantalla 7

MARÍA GUADALUPE GARCÍA MUÑOZ|PROGRAMAR O MORIR

23


SAGAS

Captura de pantalla 8

Captura de pantalla 9

MARÍA GUADALUPE GARCÍA MUÑOZ|PROGRAMAR O MORIR

24


Captura de pantalla 10

Captura de pantalla 11

MARÍA GUADALUPE GARCÍA MUÑOZ|PROGRAMAR O MORIR

25


Captura de pantalla 12

MARÍA GUADALUPE GARCÍA MUÑOZ|PROGRAMAR O MORIR

26


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.