Magari qualche indicazione in più sarebbe utile.
Ho trovato la classe col main() (Receipt.java) e vedo che
1) Non potrà mai compilare: nel main viene dichiarato e istanziato un array di tipo Utente, classe che non esiste... esiste la classe User.
2) Istanzi un array di Utente con 1 solo elemento (perchè?), ma non usi mai l'array: non crei nessun oggetto Utente e non ci fai nulla... leggi le informazioni da tastiera e le butti via.
3) Istanzi un array di 5 oggetti Product che non usi da nessuna parte: non crei nemmeno un oggetto Product. La classe col main si limita a leggere da tastiera un po' di informazioni per poi buttarle via e non farci nulla.
Direi che il problema non è tanto l'applicazione dello sconto, è più a monte: non istanzi nessun oggetto, non ne richiami nessun metodo, leggi delle informazioni che poi butti via.
Se la classe si chiama User, dovresti creare un oggetto User (non Utente):
codice:User user = new User(name, surname, idcard);
Da qualche parte devi istanziare i prodotti del tipo corretto:
codice:p[i] = new Food( ... ); oppure p[i] = new NonFood( ... );
Quando avrai istanziato questi oggetti, potrai invocare su di essi i metodi che hai definito.
Ciao.![]()



Rispondi quotando
