Forse ho capito male, ma credo che tu debba cambiare i valori di proprietà di alcuni oggetti di una classe, da una classe diversa da quella che li contiene, giusto?
In questo caso, la via più breve è quella di definire una classe a parte per l'interfaccia in modo che essa preveda dei metodi appositi per la modifica dei suoi oggetti e passare questo oggetto al metodo che ti interessa effettui le modifiche:
codice:
// La classe che implementa l'interfaccia: estende JFrame
public class Finestra extends JFrame {
... // Pulsanti, labels e quant'altro
// metodi pubblici, fra cui quello che mi permette di modificare
// una label
...
public void modificaLabel(String nuovoTesto) {
label.setText(nuovoTesto);
}
}
// La classe che effettua le modifiche
pubilc class Modificatrice {
...
public void updateLanguage(Finestra f, int lang) {
... // faccio le elaborazioni
f.modificaLabel( nuovoTesto ); // applico il nuovo testo
}
}
Questa è la struttura a grandi linee di come va gestita la cosa. Si possono usare anche altri modi, ma questo mi sembra nettamente il più semplice, nettamente coerente con la filosofia Object Oriented.
Ciao.