Hola, Envío un nuevo ejercicio de práctica de super constructores para vuestra evaluación. Ejercicio CU00686B del manual práctico de programación Java.
Muchas gracias a todos por los comentarios.
Clase normal: Producto
public class Producto
{
private int fechaCaducidad;
private int numeroLote;
/**
* Constructor for objects of class Producto
*/
public Producto(int fechaCaducidad, int numeroLote)
{
this.fechaCaducidad = fechaCaducidad;
this.numeroLote = numeroLote;
}
public int getProductoFechaCaducidad() {return fechaCaducidad;}
public int getProductoNumeroLote() {return numeroLote;}
public void setProductoFechaCaducidad(int fechaCaducidad) {
this.fechaCaducidad = fechaCaducidad;
}
public void setProductoNumeroLote( int numeroLote) { this.numeroLote = numeroLote;}
}
Subclase - Producto Fresco
public class ProductoFresco extends Producto
{
private int fechaEnvasado;
private String paisDeOrigen;
public ProductoFresco(int fechaCaducidad, int numeroLote, int fechaEnvasado, String paisDeOrigen)
{
super (fechaCaducidad, numeroLote);
this.fechaEnvasado = fechaEnvasado;
this.paisDeOrigen = paisDeOrigen;
}
public int getFechaEnvasado() { return fechaEnvasado; }
public String getPaisDeOrigen() { return paisDeOrigen;}
public void setFechaEnvasado (int fechaEnvasado) {
this.fechaEnvasado = fechaEnvasado;}
public void setPaisDeOrigen (String paisDeOrigen) {
this.paisDeOrigen = paisDeOrigen; }
public void muestraInfoProdFresco() {
System.out.println("PRODUCTO FRESCO");
System.out.println("La fecha de envasado es: "+getFechaEnvasado()+" país de origen "
+ getPaisDeOrigen() + " Fecha de Caducidad " + getProductoFechaCaducidad() + " y Nº de Lote " + getProductoNumeroLote()); }
}
Subclase Producto Congelado
public class ProductoCongelado extends Producto
{
private double temperaturaCong;
/**
* Constructor for objects of class ProductoCongelado
*/
public ProductoCongelado(int fechaCaducidad, int numeroLote, double temperaturaCong)
{
super (fechaCaducidad,numeroLote);
this.temperaturaCong = temperaturaCong;
}
public double getTemperaturaCong() {return temperaturaCong;}
public void setTemperaturaCont (double temperaturaCong) {
this.temperaturaCong = temperaturaCong; }
public void muestraInfoProdCongelado() {
System.out.println("PRODUCTO CONGELADO");
System.out.println("La temperatura es: "+getTemperaturaCong()+" º y su fecha de caducidad es "
+ getProductoFechaCaducidad() + " y Nº de Lote " + getProductoNumeroLote()); }
}
Subclase Producto Refrigerado
public class ProductoRefrigerado extends Producto
{
private String codigoOrgSupAlim;
/**
* Constructor for objects of class ProductoRefrigerado
*/
public ProductoRefrigerado(int fechaCaducidad, int numeroLote, String codigoOrgSupAlim)
{
super(fechaCaducidad, numeroLote);
this.codigoOrgSupAlim = codigoOrgSupAlim;
}
public String getCodigoOrgSupAlim() {return codigoOrgSupAlim;}
public void setCodigoOrgSupAlim( String codigoOrgSupAlim) {
this.codigoOrgSupAlim = codigoOrgSupAlim; }
public void muestraInfoProdRefrigerado() {
System.out.println("PRODUCTO REFRIGERADO");
System.out.println("Código del organismo de supervisión alimentaria: "+getCodigoOrgSupAlim()+" la fecha de caducidad es "
+ getProductoFechaCaducidad() + " y Nº de Lote " + getProductoNumeroLote()); }
}
Clase Test
/**
* TestHerencia2 - Ejercicio CU00686B
* Crea un objeto de cada una de las clases de productos Congelados, Frescos y Refrigerados
* Muestra los datos de cada uno
* @Bettu
* @05/10/2016
*/
public class TestHerencia2
{
public static void main(String [] Args) {
ProductoCongelado productoCongelado = new ProductoCongelado (05102016,4500,26);
ProductoFresco productoFresco = new ProductoFresco (12052016, 12345, 04102016,"Argentina");
ProductoRefrigerado productoRefrigerado = new ProductoRefrigerado (31012016,9987,"ATB300");
productoFresco.muestraInfoProdFresco();
productoCongelado.muestraInfoProdCongelado();
productoRefrigerado.muestraInfoProdRefrigerado();
}
}