Respuesta al ejercicio CU00686B del tutorial java desde cero:
public class Producto{
private String nombreDeProducto, fechaDeCaducidad;
private int numeroDeLote;
public Producto(String nombreDeProducto, String fechaDeCaducidad, int numeroDeLote){
this.nombreDeProducto = nombreDeProducto;
this.fechaDeCaducidad = fechaDeCaducidad;
this.numeroDeLote = numeroDeLote;
}
public Producto(){}
public void setNombreDeProducto(String nombreDeProducto){
this.nombreDeProducto = nombreDeProducto;
}
public String getNombreDeProducto(){return nombreDeProducto;}
public void setFechaDeCaducidad(String fechaDeCaducidad){
this.fechaDeCaducidad = fechaDeCaducidad;
}
public String getFechaDeCaducidad(){return fechaDeCaducidad;}
public void setNumeroDeLote(int numeroDeLote){
this.numeroDeLote = numeroDeLote;
}
public int getNumeroDeLote(){return numeroDeLote;}
}
public class ProductoFresco extends Producto{
private String fechaEnvasado;
private String paisOrigen;
public ProductoFresco(String nombre, String fechaCaducidad, int numeroLote, String fechaEnvasado, String paisOrigen){
super(nombre, fechaCaducidad, numeroLote);
this.fechaEnvasado = fechaEnvasado;
this.paisOrigen= paisOrigen;
}
public ProductoFresco(String nombre, String fechaCaducidad, int numeroLote){
super(nombre, fechaCaducidad, numeroLote);
}
public ProductoFresco(){
super();
}
public void setFechaEnvasado(String fechaEnvasado){
fechaEnvasado = fechaEnvasado;
}
public String getFechaEnvasado(){return fechaEnvasado;}
public void setPaisDeOrigen(String paisOrigen){
paisOrigen = paisOrigen;
}
public String getPaisOrigen(){return paisOrigen;}
public void mostrarProFresco(){
System.out.println("Contenido del Producto Fresco\nNombre: "+getNombreDeProducto()+"\nNumero de lote: "+ getNumeroDeLote() +
"\nPais de Origen: "+ getPaisOrigen()+"\nFecha de Envasado: "+ getFechaEnvasado()+"\nFecha de Caducidad: " + getFechaDeCaducidad()+"\n");
}
}
public class ProductoRefigerado extends ProductoFresco
{
private String codigoSupervisionAlimentaria;
public ProductoRefigerado(){
super();}
public ProductoRefigerado(String nombre, String fechaDeCaducidad, int numero, String codigo){
super( nombre, fechaDeCaducidad, numero);
codigoSupervisionAlimentaria = codigo;
}
public ProductoRefigerado(String nombre, String fechaDeCaducidad, int numero){
super(nombre, fechaDeCaducidad, numero);
}
public void setCodigoSupervisionAlimentaria(String codigoSupervisionAlimentaria){
codigoSupervisionAlimentaria = codigoSupervisionAlimentaria;
}
public String getCodigoSupervisionAlimentaria(){return codigoSupervisionAlimentaria;}
public void mostrarProRefigerado(){
System.out.println("Contenido del producto refigerado\n"+ "Nombre: "+ getNombreDeProducto() +"\nFecha de caducidad: "+getFechaDeCaducidad()+"\nNumero de Lote: "+getNumeroDeLote()+"\nCodigo de Supervision Alimentaria: "+getCodigoSupervisionAlimentaria()+"\n");
}
}
public class ProductoCongelado extends ProductoRefigerado
{
private int temperaturaRecomendada;
public ProductoCongelado(){}
public ProductoCongelado(String nombre, String fechaDeCaducidad, int numeroDeLote, int temperatura){
super(nombre, fechaDeCaducidad, numeroDeLote);
temperaturaRecomendada = temperatura;
}
public void setTemperaturaRecomendada(int temperaturaRecomendada){
temperaturaRecomendada = temperaturaRecomendada;
}
public int getTemperaturaRecomendada(){return temperaturaRecomendada;}
public void mostrarProductos(){
System.out.println("Contenido del producto congelado\nNombre: " +getNombreDeProducto()+"\nFecha de Caducidad: "+ getFechaDeCaducidad() + "\nNumero de Lote: " + getNumeroDeLote() +"\nTemperatura de Congelado: "+ getTemperaturaRecomendada()+" grado\n");
}
}
public class TestHerencia
{
// instance variables - replace the example below with your own
public static void main(){
//creacion del objeto producto fresco con nombre productoF
ProductoFresco productoF = new ProductoFresco("Fresa","21/08/2016",825,"21/03/2016","Rep. Dominicana");
//creacion del objeto producto refigerado con nombre productoR
ProductoRefigerado productoR = new ProductoRefigerado("Jugo de Naranja","12/09/2016",698,"FC-2016-17");
//creacion del objeto producto congelado con nombre productoC
ProductoCongelado productoC = new ProductoCongelado("camarones","24/05/2016",125, -1);
//metodo para mostrar el contenido de los productos frescos
productoF.mostrarProFresco();
//metodo para mostrar el contenido de los productos refigerados
productoR.mostrarProRefigerado();
//metodo para mostrar el contenido de los productos congelados
productoC.mostrarProductos();
}
}