Hola dongo
Lo del package que te da problemas, es culpa mía.
Te cuento. Yo tengo mis clases en mi package del ejercicio CU00... y en un package aparte las que yo llamo clases accesorias que importo según las necesito
En un ejercicio anterior, el de los packages, envié varias clases en sus packages según pedía el ejercicio. Como a la hora de comprobar desde el foro que esas clases estaban bien formateadas en su package había que crear todos esos packages, se quedó que en ejercicios posteriores, todas las clases estarían en el package por defecto (todos en la misma carpeta).
Para hacerlo así, cada vez que envío clases al foro, elimino en la misma ventana del mensaje/asunto la cabecera de la clase que incluye el package, así, cuando descarga alguien las clases, todas están en el package por defecto.
Continúo.
Como esta vez por la extensión del código, no me dejaba enviarlo como mensaje, opté por enviar el código en un archivo adjunto.
Yo tomé cuiado de eliminar la cabecera de las clases con su package. Eso lo hice con el bloc de notas de windows. Y aquí no se si al tener Bluej (por cierto mi IDE es Bluej) abierto, detectaba que perdía la referencia del package y la volvía a escribir, o no se que cosa pasa.
Comprueba, yo lo he hecho, que dentro del archivo comprimido que envié, todos los archivos empiezan con los comentarios, no aparece ningún package.
Lo del guión que comentas, supongo que debe ser un caracter especial que habrá metido el bloc de notas o Bluej, no sé, que al igual que el tabulador empuja el cursor varios espacios adelante, este lo que hace el saltar al principio de línea (sin cambiar de línea) y continuar escribiendo a partir de allí.
Resumiendo. Si pones todas las clases en la misma carpeta/package y eliminas el package incorrecto que aparece, todo debe ir bien.
Aunque como me has demostrado con tu respuesta, eso lo has solucionado por tu cuenta.
Si otra vez debo enviar las clases por un adjunto, dejaré que todas tengan el mismo package y así funcionará sin hacer demasiados cambios. ¿Estoy en lo cierto?
Me quedo con la nota de: las llamadas a los métodos de la clase padre precederlas de 'super'. Y así el compilador no tiene que hacer suposiciones, al igual que con 'this'
Gracias por tu respuesta, extensa y surtida con imágenes.
Quiero aprovechar para pedirte le eches un ojo al método que tengo convertido en comentario en la clase ListaDeProductos
public void muestraLista(String tipoProducto) si funcionara bien tendría que ir donde aparece el siguiente código del main entre las líneas 70-74
if (respuesta3.equals("1")) { listaProductos.muestraLista(1); }
else if (respuesta3.equals("2")) { listaProductos.muestraLista(2); }
else if (respuesta3.equals("3")) { listaProductos.muestraLista(3); } y en su lugar pondría
if (respuesta3.equals("1")) { listaProductos.muestraLista("ProductoFresco"); }
else if (respuesta3.equals("2")) { listaProductos.muestraLista("ProductoRefrigerado"); }
else if (respuesta3.equals("3")) { listaProductos.muestraLista("ProductoCongelado"); } Como decía en el primer mensaje, tengo un método sustituto.
Pero tenía interés en saber si este método hace algo incongruente, que debe hacerlo pues da error. Y saber donde está el tapón que bloquea este método.
Gracias otra vez.