Foros aprenderaprogramar.com
Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: camoay en 30 de Noviembre 2016, 19:18
-
Hola a todos, les dejo el código del ejercicio:
Clase EnvioDeProductos
package aprenderaprogramar.java.iniciacion.clase88;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class EnvioDeProductos {
private List<Producto> envio;
// Constructores
EnvioDeProductos(){
envio = new ArrayList<Producto>();
}
// Métodos
public void añadirProdEnvio(Producto item){
envio.add(item);
}
public boolean existeProdEnvio(Producto item){
return envio.contains(item);
}
public void reemplazaProdEnvio(int index,Producto item){
envio.set(index, item);
}
public void borrarEnvio(){
envio.clear();
}
public int posicionProdEnvio(Producto item){
return envio.indexOf(item);
}
public void borrarProdEnvio(Producto item){
envio.remove(item);
}
public void borrarPosicionProdEnvio(int index){
envio.remove(index);
}
public int tamañoEnvio(){
return envio.size();
}
public void ListarProdEnvio(){
Iterator<Producto> iter = envio.iterator();
System.out.println ("Los productos del envío son: ");
Producto tmpProdEnvio;;
while(iter.hasNext()){
tmpProdEnvio = iter.next();
System.out.println(tmpProdEnvio.toString());
}// end while
}//end method
}// end class
Clase TestHerencia4
package aprenderaprogramar.java.iniciacion.clase88;
import java.time.LocalDate;
public class TestHerencia4 {
public static void main(String[] args) {
// Crear envío
EnvioDeProductos envio1 = new EnvioDeProductos();
envio1.añadirProdEnvio(new ProductoFresco("fresco1234",LocalDate.of(2017,3,15), LocalDate.of(2016,1,10),"Portugal"));
envio1.añadirProdEnvio(new ProductoFresco("fresco5678",LocalDate.of(2016,8,15), LocalDate.of(2016,1,10),"España"));
envio1.añadirProdEnvio(new ProductoRefrigerado("refrig0010",LocalDate.of(2016,6,20),LocalDate.of(2016,2,21),"Alemania","-8\u00b0C","AWD8945"));
envio1.añadirProdEnvio(new ProductoRefrigerado("refrig0020",LocalDate.of(2016,7,20),LocalDate.of(2016,3,21),"Alemania","-8\u00b0C","AWD8945"));
envio1.añadirProdEnvio(new ProductoRefrigerado("refrig0030",LocalDate.of(2016,8,20),LocalDate.of(2016,4,21),"Alemania","-8\u00b0C","AWD8945"));
envio1.añadirProdEnvio(new ProductoCongeladoAire("congel1100",LocalDate.of(2018,8,30),LocalDate.of(2016,8,31),"Brasil","-25\u00b0C","Aire","","","",""));
envio1.añadirProdEnvio(new ProductoCongeladoAire("congel1100",LocalDate.of(2018,10,30),LocalDate.of(2016,10,31),"Brasil","-25\u00b0C","Aire","","","",""));
envio1.añadirProdEnvio(new ProductoCongeladoAgua("congel2200",LocalDate.of(2019,6,30),LocalDate.of(2016,6,30),"Noruega","-20\u00b0C","Agua","0.9"));
envio1.añadirProdEnvio(new ProductoCongeladoAgua("congel2200",LocalDate.of(2019,4,30),LocalDate.of(2016,4,30),"Noruega","-20\u00b0C","Agua","0.85"));
envio1.añadirProdEnvio(new ProductoCongeladoNitrogeno("congel3300",LocalDate.of(2020,11,30),LocalDate.of(2016,11,30),"Finlandia","-30\u00b0C","Nitrógeno","IQF","20"));
// Muestro el total de productos del envío y el detalle de los mismos
System.out.println("envio1 está compuesto por "+envio1.tamañoEnvio()+" productos.");
envio1.ListarProdEnvio();
}// end main method
}// end class
Clase Producto
package aprenderaprogramar.java.iniciacion.clase88;
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;
}// end toString method
}// end class
El resto de clases son las mismas del ejercicio anterior.
Les agradeceré cualquier corrección o aclaración técnica...
-
Buenos días.
En los siguientes enlaces tienes respuestas a este ejercicio:
https://www.aprenderaprogramar.com/foros/index.php?topic=2773.msg12749#msg12749 (https://www.aprenderaprogramar.com/foros/index.php?topic=2773.msg12749#msg12749)
https://www.aprenderaprogramar.com/foros/index.php?topic=4218.msg17548#msg17548 (https://www.aprenderaprogramar.com/foros/index.php?topic=4218.msg17548#msg17548)
https://www.aprenderaprogramar.com/foros/index.php?topic=4665.msg19032#msg19032 (https://www.aprenderaprogramar.com/foros/index.php?topic=4665.msg19032#msg19032)
Un saludo.
-
Hola camoay, has indicado "El resto de clases son las mismas del ejercicio anterior."
En todos los ejercicios deben incluirse todas las clases que intervengan, eso facilita la corrección del ejercicio (de otra manera habría que estar buscando distintas clases en distintos mensajes y eso complicaría la corrección y ayuda)
Saludos
-
La razón al que la tiene. Disculpas por mi comodidad al no incluirlas.
-
Inclúyelas si las tienes por favor, puede servir de ayuda para quien consulte tu ejercicio. Saludos.
-
buenos días y muchas gracias por tus correcciones En cuanto me reparen el ordenador completaré todo lo que me indicas. Muchas gracias.