Foros aprenderaprogramar.com

Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: Erik_Escriche en 24 de Noviembre 2016, 12:23

Título: Ejercicio de herencia con extends clase producto y subproducto CU00686B java
Publicado por: Erik_Escriche en 24 de Noviembre 2016, 12:23
¡Buenos días!

Dejo mi respuesta al ejercicio CU00686B de Aprender programación Java desde cero.

Superclase Producto:
Código: [Seleccionar]
package empresaAgroalimentaria;

/**
 * Código de la clase Producto.
 * @author Erik Escriche
 */
public class Producto {
    String fechaCaducidad;
    int numeroLote;
    /**
     * Constructor de objetos de clase Producto.
     */
    public Producto(String fechaCaducidad, int numeroLote){
       this.fechaCaducidad= fechaCaducidad;
       this.numeroLote= numeroLote;
    }

    /**
     * Métodos para obtener los datos.
     */
    public String getFechaCaducidad () { return fechaCaducidad; }
    public int getNumeroLote() {return numeroLote;}
   
    public void mostrarInformacionProducto () {
        System.out.print ("Fecha de caducidad: "+getFechaCaducidad()+". Número de lote: "+getNumeroLote()+". ");
    }
}

Subclase ProductoFresco:
Código: [Seleccionar]
package empresaAgroalimentaria;

/**
 * Código de la subclase ProductoFresco de la superclase Producto.
 * @author Erik Escriche
 */
public class ProductoFresco extends Producto {
   String fechaEnvasado;
   String paisOrigen;
   
    /**
     * Constructor de objetos de la clase ProductoFresco.
     */
    public ProductoFresco(String fechaCaducidad, int numeroLote) {
        super(fechaCaducidad, numeroLote);
        fechaEnvasado = "";
        paisOrigen= "";
    }
   
    public void setFechaEnvasado (String fechaEnvasado) {this.fechaEnvasado=fechaEnvasado;}
   
    public void setPaisOrigen (String paisOrigen) {this.paisOrigen=paisOrigen;}
   
    public String getFechaEnvasado() {return fechaEnvasado;}
   
    public String getPaisOrigen() {return paisOrigen;}
   
    public void mostrarInformacionProductoFresco () {
        System.out.print ("Datos del producto fresco. ");
        mostrarInformacionProducto();
        System.out.print ("Fecha de envasado: " + fechaEnvasado + ". País de origen: " + paisOrigen + ".\n");
    }
}

Subclase ProductoRefrigerado:
Código: [Seleccionar]
package empresaAgroalimentaria;

/**
 * Código de la subclase ProductoRefrigerado de la superclase Producto.
 * @author Erik Escriche
 */
public class ProductoRefrigerado extends Producto {
   String codigoOrganismoSupervisionAlimentaria;
     
    /**
     * Constructor de objetos de la clase ProductoRefrigerado.
     */
    public ProductoRefrigerado(String fechaCaducidad, int numeroLote) {
        super(fechaCaducidad, numeroLote);
        codigoOrganismoSupervisionAlimentaria="";
    }
       
    public void setCodigoOrganismoSupervisionAlimentaria (String codigoOrganismoSupervisionAlimentaria) {this.codigoOrganismoSupervisionAlimentaria=codigoOrganismoSupervisionAlimentaria;}
   
    public String getCodigoOrganismoSupervisionAlimentaria() {return codigoOrganismoSupervisionAlimentaria;}
   
    public void mostrarInformacionProductoRefrigerado () {
        System.out.print ("Datos del producto refrigerado. ");
        mostrarInformacionProducto();
        System.out.print ("Código del organismo de supervisión alimentaria: "+codigoOrganismoSupervisionAlimentaria+".\n");
    }
}

Subclase ProductoCongelado:
Código: [Seleccionar]
package empresaAgroalimentaria;

/**
 * Código de la subclase ProductoCongelado de la superclase Producto.
 * @author Erik Escriche
 */
public class ProductoCongelado extends Producto{
    int temperaturaCongelacionRecomendada;

    /**
     * Constructor de objetos de la clase ProductoCongelado
     */
    public ProductoCongelado(String fechaCaducidad, int numeroLote){
        super(fechaCaducidad,numeroLote);
        temperaturaCongelacionRecomendada=0;
    }
 
    public void setTemperaturaCongelacionRecomendada (int temperaturaCongelacionRecomendada) {
        this.temperaturaCongelacionRecomendada=temperaturaCongelacionRecomendada;
    }
   
    public int getTemperaturaCongelacionRecomendada () {return temperaturaCongelacionRecomendada;}
   
    public void mostrarInformacionProductoCongelado() {       
        System.out.print ("Datos del producto congelado. ");
        mostrarInformacionProducto();
        System.out.print ("Temperatura de congelación recomendada: " + temperaturaCongelacionRecomendada + " grados.\n");
    }
}

Clase TestEmpresaAgroalimentaria:
Código: [Seleccionar]
package empresaAgroalimentaria;

/**
 * Código de la clase TestEmpresaAgroalimentaria que nos va a servir para comprobar el correcto funcionamiento de la superclase Producto y sus subclases.
 * @author Erik Escriche
 */
public class TestEmpresaAgroalimentaria {
    public static void main (String [] Args) {
        ProductoFresco productoFresco = new ProductoFresco ("07/07/07",456);
        productoFresco.setFechaEnvasado ("02/02/02");
        productoFresco.setPaisOrigen ("Panamá");
        productoFresco.mostrarInformacionProductoFresco();
       
        ProductoRefrigerado productoRefrigerado = new ProductoRefrigerado ("08/08/08", 987);
        productoRefrigerado.setCodigoOrganismoSupervisionAlimentaria ("487693562810");
        productoRefrigerado.mostrarInformacionProductoRefrigerado();
       
        ProductoCongelado productoCongelado = new ProductoCongelado ("09/09/09", 123);
        productoCongelado.setTemperaturaCongelacionRecomendada(-10);
        productoCongelado.mostrarInformacionProductoCongelado();
    }
}

¡Saludos!
Título: Re:Ejercicio de herencia con extends CU00686B java
Publicado por: ESOJ en 25 de Noviembre 2016, 02:41
Buenos días.
Tienes éste ejercicio ya comentado en los enlaces:
https://www.aprenderaprogramar.com/foros/index.php?topic=5364.msg21164#msg21164 (https://www.aprenderaprogramar.com/foros/index.php?topic=5364.msg21164#msg21164)
https://www.aprenderaprogramar.com/foros/index.php?topic=4958.msg19988#msg19988 (https://www.aprenderaprogramar.com/foros/index.php?topic=4958.msg19988#msg19988)
https://www.aprenderaprogramar.com/foros/index.php?topic=4958.msg19988#msg19988 (https://www.aprenderaprogramar.com/foros/index.php?topic=4958.msg19988#msg19988)
https://www.aprenderaprogramar.com/foros/index.php?topic=2337.msg11149#msg11149 (https://www.aprenderaprogramar.com/foros/index.php?topic=2337.msg11149#msg11149)
Hay algún enlace más donde puedes ver más respuestas a éste ejercicio.
Si escribes CU00686B en buscar en los foros podrás acceder a ellos y ver como lo han hecho otros compañeros.
Un saludo
Título: Re:Ejercicio de herencia con extends CU00686B java
Publicado por: Erik_Escriche en 25 de Noviembre 2016, 13:28
De acuerdo. Gracias.
Título: Re:Ejercicio de herencia con extends clase producto y subproducto CU00686B java
Publicado por: Alex Rodríguez en 03 de Diciembre 2016, 20:19
Hola en general el código lo veo correcto. Viendo comentarios en los hilos que te ha indicado ESOJ podrás sacar algunas conclusiones útiles.

Saludos
Título: Re:Ejercicio de herencia con extends clase producto y subproducto CU00686B java
Publicado por: Erik_Escriche en 03 de Diciembre 2016, 20:47
Gracias, Alex.

Ayer completé el curso "Aprender programación Java desde cero" y quería agradeceros que pongáis a disposición de todo el mundo un material tan bueno.
Título: Re:Ejercicio de herencia con extends clase producto y subproducto CU00686B java
Publicado por: Alex Rodríguez en 17 de Diciembre 2016, 21:32
Gracias. Enhorabuena por haber completado el curso. Al fin y al cabo, requiere un esfuerzo y constancia que no todos los que comienzan mantienen en el tiempo. Habiendo terminado el curso, te invitamos a unirte al grupo de colaboradores que participan respondiendo en los foros. Es algo voluntario, pero esperamos que quien haya sido ayudado, ayude también a los demás. Anticipo un "feliz navidad". Saludos,
Título: Re:Ejercicio de herencia con extends clase producto y subproducto CU00686B java
Publicado por: Erik_Escriche en 18 de Diciembre 2016, 15:04
Claro, ayudaré a responder a los temas en los que me sienta más o menos seguro de lo que estoy diciendo, jeje. ¡Feliz Navidad!
Título: Re:Ejercicio de herencia con extends clase producto y subproducto CU00686B java
Publicado por: Alex Rodríguez en 21 de Diciembre 2016, 19:47
Gracias, nos vemos por los foros. No te preocupes mucho si tienes algo de inseguridad porque tarde o temprano los moderadores revisamos los hilos y si vemos alguna cuestión a comentar lo hacemos. Saludos.