我应该什么时候创建自己的 TableModelListeners 和 DataModelEvents?
我知道 a 和 的区别和DefaultTableModel
用法 。AbstractTableModel
TableModel
我在许多在线 Java 示例中看到,在创建扩展 DefaultTableModel 和 AbstractTableModel 类的类(自定义模型)时,显式创建了 TableModelListeners 和 DataModelEvents。
这是我的理解:
如果我正在扩展一个,
DefaultTableModel
那么这个模型已经知道如何创建 DataModelEvents 和 TableModelListeners(这样我就不必添加它们)监听/观察这些事件并且还知道通知 TableModelListeners。如果我正在扩展 AbstractTableModel,那么这个模型已经知道如何创建 DataModelEvents 和 TableModelListeners(这样我就不必添加它们)来监听/观察这些事件。但我必须显式调用 firetablechanged() 或类似方法来通知 TableModelListeners 事件。
如果我正在实现一个 TableModel,那么这个模型已经知道如何创建 DataModelEvents,但没有任何 TableModelListeners(所以我必须添加它们)来监听/观察这些事件。而且我还必须显式调用 firetablechanged() 或类似方法来通知 TableModelListeners 事件。