Gostaria de entender qual a diferença primordial entre um DefaultTableModel e o getModel de uma jTable qualquer. Para melhor explicar, vou dar um exemplo:
Object[] objetoQualquer = {1, "exemplo"};
//parte 1:
JTable tabela = new JTable();
tabela.getModel();
//parte2:
DefaultTableModel modeloDefault = new DefaultTableModel();
modelDefault.addRow(objetoQualquer);
Usando o DefaultTableModel, consigo adicionar ao modeloDefault dados em formato de objeto, com o método addRow, por exemplo. Mas, quando uso o getModel (que em teoria me retorna também um modelo de tabela), não tenho acesso a esse método para adicionar linhas inteiras. Fico me perguntando o porquê disso, já que, ao meu ver, tanto o modeloDefault quanto o getModel são modelos de tabelas.
Dessa forma que está, na maioria dos casos em que não quero criar meu próprio TableModel, acabo usando um cast para “forçar” o uso do DefaultTableModel:
this.modelDefault = (DefaultTableModel) this.jTableTabela.getModel();
Se alguém puder me explicar, agradeço.