Ma perchè non usi i tag CODE
?
Comunque è semplice, butta via la parte relativa al table model del codice del tuo esempio (la classe che estende abstract table model per intenderci) e dall'eseterno quando devi creare la JTable fai qualcosa del tipo
codice:
JTable myTable = new JTable();
DefaultTableModel myModel = new DefaultTableModel(S,columnNames);
myTable.setModel(myModel);
Il tutto supponendo che S sia un vettore bidimensionale le cui righe sono vettori monodimesionali di oggetti (cioè non di tipi primitivi del tipo int,boolean etc...) e che columnNames sia un nettore di oggetti stringa del tipo:
codice:
String[] columnNames = new String[]{"Colonna1","Colonna2",....};