Sesión 2. -Implementación de varias clases que se comunican.
Este programa está pensado en una aplicación (nada decente) para el cine.
El programa da a elegir qué película quieres ver mediante un menú, después
de elegir hace el cobro por el boleto, y al final te dice las características del mismo
como el precio, el título y la hora de la función.
Se compone de 3 clases que se llaman: class MenuEleccion, class Boleto, class Entrega:
Acá les dejo el código de las 3 clases y las imágenes del programa en ejecución.
Clase Boleto:
/*
ALUMNO:CARLOS TRIANA DRA. SARA ELENA GARZA
Este programa esta pensado en una aplicación
para un cine, el programa da a elegir qué película
quieres ver mediante un menú , después de
elegir hace el cobro por la película y al final
te entrega el boleto, con las características del mismo.
Tiene 3 clases, las cuales se llaman class MenuEleccion,
class Cobro y class Entrega.
*/
public class Boleto
{
private int precio;
private int hora;
private String titulo;
public Boleto(int precio, int hora, String titulo)
{
this.precio = precio;
this.hora = hora;
this.folio = folio;
this.titulo = titulo;
}//Fin de constructor Boleto
public void setPrecio(int precio){
this.precio = precio;
}
public int getPrecio(){
return precio;
}
public int getHora(){
return hora;
}
public String getTitulo(){
return titulo;
}
}
Clase Entrega:
import java.util.*;
// ALUMNO: CARLOS TRIANA DRA. SARA ELENA GARZA
public class Entrega
{
public static void Entrega1(){
Boleto b1 = new Boleto(100,5,"Sin memoria");
System.out.println("El nombre de la pelicula es : " + b1.getTitulo());
System.out.println("El precio del boleto es : " + b1.getPrecio());
System.out.println("La hora de la funcion es : " + b1.getHora());
}//Fin de Entraga1
public static void Entrega2(){
Boleto b2 = new Boleto(100,8,"Venganza letal");
System.out.println("El nombre de la pelicula es : " + b2.getTitulo());
System.out.println("El precio del boleto es : " + b2.getPrecio());
System.out.println("La hora de la funcion es : " + b2.getHora());
}//Fin de entrega2
public static void Entrega3(){
Boleto b3 = new Boleto(100,11,"Sanctum");
System.out.println("El nombre de la pelicula es : " + b3.getTitulo());
System.out.println("El precio del boleto es : " + b3.getPrecio());
System.out.println("La hora de la funcion es : " + b3.getHora());
}//Fin de Entrega3
}//Fin de la clase Entrega
Clase MenuEleccion:
import java.util.Scanner;
//ALUMNO: CARLOS TRIANA DRA.SARA ELENA GARZA
public class MenuEleccion
{
public static final Scanner entrada = new Scanner(System.in); //Entrada de datos
private int numero;
private int eleccion;
public static void MenuEleccion()
{
int eleccion;
int numero;
System.out.print("\nMENU DE ELECCION DE PELICULA");
System.out.println("\n\nIngrese un numero para elegir una pelicula:\n");
System.out.print("1 - Sin Memoria\n2 - Venganza letal\n3 - Sanctum\n\n");
eleccion=entrada.nextInt();
System.out.println();
if (eleccion==1)
{
System.out.println("Has elegido la pelicula: Los ojos de Julia\n");
Entrega.Entrega1();
}
else if (eleccion==2)
{
System.out.println("Has elegido la pelicula: Venganza letal\n");
Entrega.Entrega2();
}
else if (eleccion==3)
{
System.out.println("Has elegido la pelicula: Sanctum\n");
Entrega.Entrega3();
}
}//Fin del metodo MenuEleccion
public static void main(String args[]){
MenuEleccion();
}//Fin de la funcion main
}//Fin de la clase MenuEleccion
Es todo por esta entrada, cualquier duda o corrección pueden dejarla en comentarios.
Saludos ;)
Bien, aunque siento que la clase "Entrega" está de sobra; si te fijas, pudiera ser un método en la misma clase "Boleto". Igualmente, no necesitas tener un método "Entrega 1", "Entrega 2" y "Entrega 3"; con un sólo método de éstos y la inclusión de parámetros, puedes obtener la misma funcionalidad. Esto además te permite tener un código más modular y evitar mucha reprogramación si tienes que cambiar los métodos (sólo cambiarías uno y no tres).
ResponderEliminarOtra recomendación: trata de apegarte a las convenciones. Clases con PascalCasing, métodos y atributos con camelCasing.
Bien.
Calificación: 2.2/5