Salve ragazzi ho un problema a runtime che genera l'errore presente nel titolo.
Il codice che genere l'errore è:
codice:
public class CountDown extends Thread{
    
    private javax.swing.JLabel jLabel1;
    
    public CountDown(javax.swing.JLabel a)
    {
        jLabel1=a;
    }
    
    public CountDown(){}
    
    int b=0;
    @Override
    public void run()
    {
        for(int i=0;i<=30;i++)
        {
            b=30-i;
            jLabel1.setText(Integer.toString(b)); //L'ERRORE STA QUI!!!!
            try
            {           	
                Thread.sleep(1000);
            }
            catch (Exception e)
            {
                System.out.println(e.getMessage());
            }
        }
        
        jLabel1.setText("Tempo Scaduto");
    }
    
}
Le chiamate avvengono in questo metodo:

Classe 1
codice:
Classe2 obj1= new Classe2();
CountDown obj2=new CountDown(jLabel1);
Classe 2
codice:
CountDown obj=new Countdown();
obj.start();

Classe1, Classe2, CountDown risiedono in file diversi all'interno dello stesso progetto.
Grazie in anticipo a chiunque voglia aiutarmi!