Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package base_actividad_1_1;
- /*
- * Clase Dispensador
- * Existirá un objeto de esta clase por cada tipo de producto que haya en la máquina
- */
- public class Dispensador {
- /*
- * Atributos de la clase
- * String nombreProducto - No está en el diagrama pero lo añado para poder identificar el producto (coca, fanta, sprite,...)
- * int cantidad - número de latas de un producto que se encuentran en la máquina en un determinado momento
- * double precio - precio que cuesta el producto
- */
- String nombreProducto;
- int cantidad;
- int precio;
- private Clasificador miClasificador;
- /*
- * Constructor
- * @param nombre - nombre del producto
- * @param clasificador - clasificador (ya está inicializado previamente)
- * @param p - precio del producto
- * @param inicial - cantidad inicial de productos
- */
- public Dispensador(String nombre, Clasificador asignado, int p, int inicial){
- nombreProducto = nombre;
- miClasificador = asignado;
- cantidad = inicial;
- precio = p;
- }
- /*
- * Método seleccionar. Se llamará a este método desde la clase selección que corresponda
- * (cada producto tiene una tecla de selección y un dispensador asociado)
- * Llama al método "seleccionarProducto" del clasificador
- * Dependiendo de la implementación que se haga del método "seleccionarProducto" en el clasificador
- * será necesario pasar unos parámetros u otros
- */
- public void seleccionar(){
- cantidad--;
- }
- /*
- * Disminuye la cantidad de latas de un producto
- * Como no es una máquina real hay que simular de alguna forma que se ha dispensado una lata
- * Podemos añadir un mensaje en este método o hacer que el clasificador le pida al visor que muestre un mensaje
- */
- // public static void dispensar(){
- //
- // }
- /*
- * getters (¿son necesarios?)
- * Se considera que los setters no son necesarios puesto que los valores no van a cambiar
- * excepto la cantidad de producto que se ya se maneja mediante dispensar
- */
- public int getCantidad() {
- return cantidad;
- }
- public String getNombreProducto() {
- return nombreProducto;
- }
- public int getPrecio() {
- return precio;
- }
- /*
- * toString
- * para comprobar el estado del dispensador
- * @return retorna un string con los datos del dispensador
- */
- public String toString(){
- String s = "";
- s += "El dispensador de "+nombreProducto+" contiene "+cantidad+" latas que cuestan "+precio+" centimos\n";
- return s;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement