Каушик, если вы действительно хотите создать свою собственную реализацию интерфейса TableModel и иметь дело с хранением строк вручную (как вы, очевидно, делаете с помощью Object[][] data
), то вы должны реализовать метод removeRow()
, потому что абстрактная таблицаМодель не «знает», как это сделать.removeRow () должен будет в конце вызывать fireTableRowsDeleted () ...
Хорошей альтернативой является реорганизация вашего класса и расширение класса DefaultTableModel.
Еще одно предложение - поскольку табличная модель изменяетМного, динамический массив может быть плохим выбором для хранения, потому что вы должны либо перераспределять пространство каждый раз, когда добавляете строку (плохо), либо вы предварительно выделяете достаточно места для определенного количества строк, а затем, когда не хватает места, вы выделяете новый объект.[] [] с дополнительным пробелом (для следующих N строк).Обычно люди выделяют достаточно места для 2 ^ n строк в процессе перераспределения.