Quote Originariamente inviata da Sevenis Visualizza il messaggio
Io non voglio che si crei un'istanza per ogni acquisto... il prodotto è sempre e solo uno quindi ho bisogno che in base all'avvio di registraVendita() e all'inserimento dei vari acquisti vadano a modificarsi le variabili inizializzate all'inizio (totalevendite, totalescontati, etc etc). Quindi suppongo serva uno static no?
Ma dichiarando le variabili all'inizio, come faccio poi a passarle nel metodo senza che mi dia errore?
Il concetto che devi capire bene è: variabili/metodi "di istanza" (non static) sono associati e distinti per ciascun oggetto creato di una certa classe. Mentre variabili/metodi "di classe" (static) sono per così dire "unici" (=globali), associati alla classe.

Nel tuo codice all'inizio hai 6 variabili di istanza e registraVendita() è anche di istanza. Il main() è static e in questo contesto le 6 variabili e registraVendita li potresti usare SOLO avendo a disposizione il reference ad un oggetto DemoVendite.

Ora ... questa classe DemoVendite cosa rappresenta per te? Serve solo per la applicazione o per modellare ciascun prodotto? Presumo sia il primo scenario.