Autor Tema: Java desde cero,herencia simple, extends y super en Java, ejercicio CU00687B  (Leído 2182 veces)

camoay

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 44
    • Ver Perfil
Muy buenas, aquí les dejo mi ejercicio:

Clase Producto
Código: [Seleccionar]
package aprenderaprogramar.java.iniciacion.clase87;

import java.time.LocalDate;

public class Producto {
private String lote;
private LocalDate fechaCaducidad;
private LocalDate fechaEnvasado;
private String paisOrigen;

// Constructores
Producto(){
lote = "";
fechaCaducidad = null;
fechaEnvasado  = null;
paisOrigen     = "";
}
Producto(String lote, LocalDate fechaCaducidad, LocalDate fechaEnvasado, String paisOrigen){
this.lote = lote;
this.fechaCaducidad = fechaCaducidad;
this.fechaEnvasado  = fechaEnvasado;
this.paisOrigen     = paisOrigen;
}

// Métodos
public String getLote() {
return lote;
}
public void setLote(String lote) {
this.lote = lote;
}
public LocalDate getFechaCaducidad() {
return fechaCaducidad;
}
public void setFechaCaducidad(LocalDate fechaCaducidad) {
this.fechaCaducidad = fechaCaducidad;
}
public LocalDate getFechaEnvasado() {
return fechaEnvasado;
}
public void setFechaEnvasado(LocalDate fechaEnvasado) {
this.fechaEnvasado = fechaEnvasado;
}
public String getPaisOrigen() {
return paisOrigen;
}
public void setPaisOrigen(String paisOrigen) {
this.paisOrigen = paisOrigen;
}
public String toString(){
String string ="Este es un objeto Producto, su número de Lote es '"+getLote()+"' y su Fecha de caducidad es '"+getFechaCaducidad()+
       "'\nsu fecha de Envasado es '"+getFechaEnvasado()+"' y su Pais de Origen es '"+getPaisOrigen()+"'.";
return string;
}
}

Clase ProductoFresco
Código: [Seleccionar]
package aprenderaprogramar.java.iniciacion.clase87;

import java.time.LocalDate;

public class ProductoFresco extends Producto{

//Constructores
ProductoFresco() {
super();
}
ProductoFresco(String lote, LocalDate fechaCaducidad, LocalDate fechaEnvasado, String paisOrigen) {
super(lote,fechaCaducidad,fechaEnvasado, paisOrigen);
}

//Métodos

@Override
public String toString(){
String string ="Este es un objeto ProductoFresco, es subclase de Producto; su número de Lote es '"+getLote()+"' y su Fecha de caducidad es '"+getFechaCaducidad()+
       "'\nsu fecha de Envasado es '"+getFechaEnvasado()+"' y su Pais de Origen es '"+getPaisOrigen()+"'.";
return string;
}
}

Clase ProductoTempControlada
Código: [Seleccionar]
package aprenderaprogramar.java.iniciacion.clase87;

import java.time.LocalDate;

/**
 * Clase intermedia que es subclase de Producto y creada para no duplicar campos en subclases.
 * Se usará para derivar las clases ProductoRefrigerado y ProductoCongelado
 * @author camoay
 * @var tempMantenRecom
 */
 
public class ProductoTempControlada extends Producto{
private String tempMantenRecom;

//Constructores
public ProductoTempControlada() {
super();
tempMantenRecom = "";
}
public ProductoTempControlada(String tempMantenRecom) {
super();
this.tempMantenRecom = tempMantenRecom;
}
public ProductoTempControlada(String lote,LocalDate fechaCaducidad,LocalDate fechaEnvasado,String paisOrigen,String tempMantenRecom) {
super(lote, fechaCaducidad, fechaEnvasado, paisOrigen);
this.tempMantenRecom = tempMantenRecom;
}

//Métodos
public String getTempMantenRecom() {
return tempMantenRecom;
}
public void setTempMantenRecom(String tempMantenRecom) {
this.tempMantenRecom = tempMantenRecom;
}

@Override
public String toString(){
String string ="Este es un objeto Producto de Temperatura Controlada, es subclase de Producto; su número de Lote es '"+getLote()+"' y su Fecha de caducidad es '"+getFechaCaducidad()+
       "'\nsu fecha de Envasado es '"+getFechaEnvasado()+"', su Pais de Origen es '"+getPaisOrigen()+"' y su Temperatura de Mantenimiento Recomendada es '"+getTempMantenRecom()+"'.";
return string;
}
}

Clase ProductoRefrigerado
Código: [Seleccionar]
package aprenderaprogramar.java.iniciacion.clase87;

import java.time.LocalDate;

public class ProductoRefrigerado extends ProductoTempControlada{
private String codigoOSA;

//Constructores
public ProductoRefrigerado() {
super();
codigoOSA = "";
}
public ProductoRefrigerado(String codigoOSA) {
super();
this.codigoOSA = codigoOSA;
}
public ProductoRefrigerado(String lote,LocalDate fechaCaducidad,LocalDate fechaEnvasado,String paisOrigen,String tempMantenRecom,String codigoOSA) {
super(lote, fechaCaducidad,fechaEnvasado, paisOrigen, tempMantenRecom);
this.codigoOSA = codigoOSA;
}

//Métodos
public String getCodigoOSA() {
return codigoOSA;
}
public void setCodigoOSA(String codigoOSA) {
this.codigoOSA = codigoOSA;
}

@Override
public String  toString(){
String string ="Este es un objeto ProductoRefrigerado, es subclase de ProductoTempControlada; su número de Lote es '"+getLote()+"' y su Fecha de caducidad es '"+getFechaCaducidad()+
       "'\nsu fecha de Envasado es '"+getFechaEnvasado()+"', su Pais de Origen es '"+getPaisOrigen()+"', su Temperatura de Mantenimiento Recomendada es '"+getTempMantenRecom()+
       "'\ny su Código del Organismo de Supervisión Alimentaria es '"+getCodigoOSA()+"'.";
return string;
}
}

Clase ProductoCongelado
Código: [Seleccionar]
package aprenderaprogramar.java.iniciacion.clase87;

import java.time.LocalDate;

public class ProductoCongelado extends ProductoTempControlada {
private String tipoCongelacion;

//Constructores
ProductoCongelado() {
super();
tipoCongelacion = "";
}
ProductoCongelado(String tipoCongelacion){
super();
this.tipoCongelacion = tipoCongelacion;
}
ProductoCongelado(String lote,LocalDate fechaCaducidad,LocalDate fechaEnvasado,String paisOrigen,String tempMantenRecom,String tipoCongelacion){
super(lote, fechaCaducidad,fechaEnvasado, paisOrigen, tempMantenRecom);
this.tipoCongelacion = tipoCongelacion;
}

// Métodos
public String getTipoCongelacion() {
return tipoCongelacion;
}
public void setTipoCongelacion(String tipoCongelacion) {
this.tipoCongelacion = tipoCongelacion;
}

@Override
public String  toString(){
String string ="Este es un objeto ProductoCongelado, es subclase de ProductoTempControlada; su número de Lote es '"+getLote()+"' y su Fecha de caducidad es '"+getFechaCaducidad()+
       "'\nsu fecha de Envasado es '"+getFechaEnvasado()+"', su Pais de Origen es '"+getPaisOrigen()+"', su Temperatura de Mantenimiento Recomendada es '"+getTempMantenRecom()+
       "'\ny su tipo de Congelación es '"+getTipoCongelacion()+"'.";
return string;
}
}

Clase ProductoCongeladoAire
Código: [Seleccionar]
package aprenderaprogramar.java.iniciacion.clase87;

import java.time.LocalDate;

public class ProductoCongeladoAire extends ProductoCongelado {
private String nitrogeno, oxigeno, dioxidoCarbono, vaporAgua;

//Constructores
ProductoCongeladoAire() {
super();
nitrogeno = "";
oxigeno = "";
dioxidoCarbono ="";
vaporAgua = "";
}
ProductoCongeladoAire(String nitrogeno,String oxigeno, String dioxidoCarbono,String vaporAgua){
super();
this.nitrogeno = nitrogeno;
this.oxigeno = oxigeno;
this.dioxidoCarbono = dioxidoCarbono;
this.vaporAgua = vaporAgua;
}
ProductoCongeladoAire(String lote,LocalDate fechaCaducidad,LocalDate fechaEnvasado,String paisOrigen,String tempMantenRecom,String tipoCongelacion,String nitrogeno,String oxigeno, String dioxidoCarbono,String vaporAgua){
super(lote, fechaCaducidad,fechaEnvasado, paisOrigen, tempMantenRecom,tipoCongelacion);
this.nitrogeno = nitrogeno;
this.oxigeno = oxigeno;
this.dioxidoCarbono = dioxidoCarbono;
this.vaporAgua = vaporAgua;
}

// Métodos
public String getNitrogeno() {
return nitrogeno;
}
public void setNitrogeno(String nitrogeno) {
this.nitrogeno = nitrogeno;
}
public String getOxigeno() {
return oxigeno;
}
public void setOxigeno(String oxigeno) {
this.oxigeno = oxigeno;
}
public String getDioxidoCarbono() {
return dioxidoCarbono;
}
public void setDioxidoCarbono(String dioxidoCarbono) {
this.dioxidoCarbono = dioxidoCarbono;
}
public String getVaporAgua() {
return vaporAgua;
}
public void setVaporAgua(String vaporAgua) {
this.vaporAgua = vaporAgua;
}

@Override
public String toString(){
String string ="Este es un objeto ProductoCongeladoAire, es subclase de ProductoCongelado; su número de Lote es '"+getLote()+"' y su Fecha de caducidad es '"+getFechaCaducidad()+
       "'\nsu fecha de Envasado es '"+getFechaEnvasado()+"', su Pais de Origen es '"+getPaisOrigen()+"', su Temperatura de Mantenimiento Recomendada es '"+getTempMantenRecom()+
       "'\ny su tipo de Congelación es '"+getTipoCongelacion()+" y las proporciones de gases son:\n Nitrógeno-> '"+getNitrogeno()+
       "',\n Oxígeno -> '"+getOxigeno()+
       "',\n Dioxido de Carbono -> '"+getDioxidoCarbono()+
       "',\n Vapor de Agua -> '"+getVaporAgua()+"'.";
return string;
}
}

Clase productoCongeladoAgua
Código: [Seleccionar]
package aprenderaprogramar.java.iniciacion.clase87;

import java.time.LocalDate;

public class ProductoCongeladoAgua extends ProductoCongelado {
private String salinidadAgua;

//Constructores
ProductoCongeladoAgua() {
super();
salinidadAgua = "";
}
ProductoCongeladoAgua(String salinidadAgua){
super();
this.salinidadAgua = salinidadAgua;
}
ProductoCongeladoAgua(String lote,LocalDate fechaCaducidad,LocalDate fechaEnvasado,String paisOrigen,String tempMantenRecom,String tipoCongelacion,String salinidadAgua){
super(lote, fechaCaducidad,fechaEnvasado, paisOrigen, tempMantenRecom,tipoCongelacion);
this.salinidadAgua = salinidadAgua;
}

// Métodos
public String getSalinidadAgua() {
return salinidadAgua;
}
public void setSalinidadAgua(String salinidadAgua) {
this.salinidadAgua = salinidadAgua;
}

@Override
public String toString(){
String string ="Este es un objeto ProductoCongeladoAgua, es subclase de ProductoCongelado; su número de Lote es '"+getLote()+"' y su Fecha de caducidad es '"+getFechaCaducidad()+
       "'\nsu fecha de Envasado es '"+getFechaEnvasado()+"', su Pais de Origen es '"+getPaisOrigen()+"', su Temperatura de Mantenimiento Recomendada es '"+getTempMantenRecom()+
       "'\ny su tipo de Congelación es '"+getTipoCongelacion()+"' y la Salinidad del Agua de Congelación es de '"+getSalinidadAgua()+"' gr/l.";
return string;
}
}

Clase ProductoCongeladoNitrogeno
Código: [Seleccionar]
package aprenderaprogramar.java.iniciacion.clase87;

import java.time.LocalDate;

public class ProductoCongeladoNitrogeno extends ProductoCongelado {
private String metodoCongelacion, tiempoExposicion;

//Constructores
ProductoCongeladoNitrogeno() {
super();
metodoCongelacion = "";
tiempoExposicion = "";
}
ProductoCongeladoNitrogeno(String metodoCongelacion,String tiempoExposicion){
super();
this.metodoCongelacion = metodoCongelacion;
this.tiempoExposicion  = tiempoExposicion;
}
ProductoCongeladoNitrogeno(String lote,LocalDate fechaCaducidad,LocalDate fechaEnvasado,String paisOrigen,String tempMantenRecom,String tipoCongelacion,String metodoCongelacion,String tiempoExposicion){
super(lote, fechaCaducidad,fechaEnvasado, paisOrigen, tempMantenRecom,tipoCongelacion);
this.metodoCongelacion = metodoCongelacion;
this.tiempoExposicion  = tiempoExposicion;
}

// Métodos
public String getMetodoCongelacion() {
return metodoCongelacion;
}
public void setMetodoCongelacion(String metodoCongelacion) {
this.metodoCongelacion = metodoCongelacion;
}
public String getTiempoExposicion() {
return tiempoExposicion;
}
public void setTiempoExposicion(String tiempoExposicion) {
this.tiempoExposicion = tiempoExposicion;
}

@Override
public String toString(){
String string ="Este es un objeto ProductoCongeladoNitrogeno, es subclase de ProductoCongelado; su número de Lote es '"+getLote()+"' y su Fecha de caducidad es '"+getFechaCaducidad()+
       "'\nsu fecha de Envasado es '"+getFechaEnvasado()+"', su Pais de Origen es '"+getPaisOrigen()+"', su Temperatura de Mantenimiento Recomendada es '"+getTempMantenRecom()+
       "'\ny su tipo de Congelación es '"+getTipoCongelacion()+"', el Método de Congelación del Nitrógeno es '"+getMetodoCongelacion()+"' y el Tiempo de Exposición al mismo fue de '"+getTiempoExposicion()+"' segundos.";
return string;
}
}

Clase TestHerencia3
Código: [Seleccionar]
package aprenderaprogramar.java.iniciacion.clase87;

import java.time.LocalDate;

public class TestHerencia3 {

public static void main(String[] args) {
System.out.println("\nRELACION DE PRODUCTOS FRESCOS:");
ProductoFresco producto0 = new ProductoFresco("fresco1234",LocalDate.of(2017,3,15), LocalDate.of(2016,1,10),"Portugal");
System.out.println(producto0); // opcion1
producto0.toString(); // opcion2
ProductoFresco producto1 = new ProductoFresco("fresco5678",LocalDate.of(2016,8,15), LocalDate.of(2016,1,10),"España");
System.out.println(producto1); // opcion1
producto1.toString(); // opcion2
System.out.println("\nRELACION DE PRODUCTOS REFRIGERADOS:");
ProductoRefrigerado producto2 = new ProductoRefrigerado("refrig0010",LocalDate.of(2016,6,20),LocalDate.of(2016,2,21),"Alemania","-8\u00b0C","AWD8945");
System.out.println(producto2); // opcion1
producto2.toString(); // opcio
ProductoRefrigerado producto3 = new ProductoRefrigerado("refrig0020",LocalDate.of(2016,7,20),LocalDate.of(2016,3,21),"Alemania","-8\u00b0C","AWD8945");
System.out.println(producto3); // opcion1
producto3.toString(); // opcion2
ProductoRefrigerado producto4 = new ProductoRefrigerado("refrig0030",LocalDate.of(2016,8,20),LocalDate.of(2016,4,21),"Alemania","-8\u00b0C","AWD8945");
System.out.println(producto4); // opcion1
producto4.toString(); // opcion
System.out.println("\nRELACION DE PRODUCTOS CONGELADOS POR AIRE:");
ProductoCongeladoAire producto5 = new ProductoCongeladoAire("congel1100",LocalDate.of(2018,8,30),LocalDate.of(2016,8,31),"Brasil","-25\u00b0C","Aire","","","","");
System.out.println(producto5); // opcion1
producto5.toString(); // opcion2
ProductoCongeladoAire producto6 = new ProductoCongeladoAire("congel1100",LocalDate.of(2018,10,30),LocalDate.of(2016,10,31),"Brasil","-25\u00b0C","Aire","","","","");
System.out.println(producto6); // opcion1
producto6.toString(); // opcion2
System.out.println("\nRELACION DE PRODUCTOS CONGELADOS POR AGUA:");
ProductoCongeladoAgua producto7 = new ProductoCongeladoAgua("congel2200",LocalDate.of(2019,6,30),LocalDate.of(2016,6,30),"Noruega","-20\u00b0C","Agua","0.9");
System.out.println(producto7); // opcion1
producto7.toString(); // opcion2
ProductoCongeladoAgua producto8 = new ProductoCongeladoAgua("congel2200",LocalDate.of(2019,4,30),LocalDate.of(2016,4,30),"Noruega","-20\u00b0C","Agua","0.85");
System.out.println(producto8); // opcion1
producto8.toString(); // opcion2
System.out.println("\nRELACION DE PRODUCTOS CONGELADOS POR NITROGENO:");
ProductoCongeladoNitrogeno producto9 = new ProductoCongeladoNitrogeno("congel3300",LocalDate.of(2020,11,30),LocalDate.of(2016,11,30),"Finlandia","-30\u00b0C","Nitrógeno","IQF","20");
System.out.println(producto9); // opcion1
producto9.toString(); // opcion2
}
}

Les agradeceré cualquier corrección o aclaración necesaria.
« Última modificación: 03 de Diciembre 2016, 20:35 por Alex Rodríguez »

ESOJ

  • Intermedio
  • ***
  • APR2.COM
  • Mensajes: 143
    • Ver Perfil

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".