Java Swing:实现TableModel还是扩展AbstractTableModel?

时间:2010-05-05 17:10:51

标签: java swing tablemodel

我应该何时应该实现TableModel,何时应该扩展AbstractTableModel?

3 个答案:

答案 0 :(得分:4)

  

我什么时候应该实现TableModel

当您需要表格模型的完整干净工作表实施和/或您必须提供一些根据您的模型的性质尚不存在或不适合的东西。

  

什么时候应该扩展AbstractTableModel?

当您可以重用抽象类提供的现有结构和方法和/或它更容易实现它。

这个想法是,如果你可以重复使用它,那么这样做。如果你不能,从头开始实施。

通过继承AbstractTableModel,无论如何你都将使用TableModel接口,它会更容易。

答案 1 :(得分:3)

AbstractTableModel已实施处理TableModelListeners,包括解雇TableModelEvent。如果你想自己处理,那么就没有理由扩展。在该代码之外,除了在接口中声明的方法的存根之外,其他代码不会添加任何好处。

答案 2 :(得分:1)

AbstractTableModel为TableModel中定义的许多方法提供默认实现。如果您不需要任何自定义行为,则可以简单地扩展AbstractTableModel。此外,如果您的模型已经扩展了不同的基类,那么只需实现TableModel就可以了。