ciao a tutti.
ho una domanda da fare sui thread.
io ho questo:
codice:
package contocorrente;

public class Banca2 {

    private int saldo;

    public Banca2(int saldo) {
        this.saldo = saldo;
    }

    synchronized public void operazione(int s) {
        if (saldo + s < 0) {
            System.out.println("Impossibile effettuare l'addebito " + s + " perchè il saldo è " + saldo);
        } else {
            saldo += s;
            System.out.println("Modifica di " + s + " effettuata, Il tuo saldo è: " + saldo);
            try {
                Thread.sleep(2000);
            } catch (Exception e) {
                System.out.println("Errore " + e.getMessage());
            }
        }
    }
}

class Modifica implements Runnable {

    Banca2 banca;
    int modifica;

    public Modifica(Banca2 banca, int modifica) {
        this.banca = banca;
        this.modifica = modifica;
        new Thread(this).start();
    }

    public void run() {
        banca.operazione(modifica);
    }
}
che viene richiamato dal main così:
codice:
package contocorrente;

public class Main {

    public static void main(String[] args) {


        Banca2 banca2 = new Banca2(0);
         new Modifica(banca2, 500);
         new Modifica(banca2, 300);
         new Modifica(banca2, -3000);
         new Modifica(banca2, 700);
    }
}
io vorrei che se il saldo va sotto lo zero il processo si blocchi.
in aula nn affronteremo questo discorso perchè troppo lungo/complicato per il corso che sto facendo.
voi sapreste aiutarmi?'