为什么Java Swing中的JTable使用Vector作为构造函数参数?
有谁知道为什么JTable
Swing中的JTable
使用Vector作为构造函数params:像JTable(Vector rowData, Vector columnNames)
,尽管Vector被标记为过时集合。 (我知道还有其他选项,但使用Vector更方便)。 它有与线程同步有关的任何内容吗?
虽然Vector
既不过时也不过时,但它是原始DefaultTableModel
的遗留物; 后来,它“被改进以实现List
接口。” Vector
是同步的,但正确使用它可以有效地依赖于实现细节。 相反,依赖于其方法提供先发生关系的类的内存一致性属性 。 例如,实现Future
和RunnableFuture
SwingWorker
特别便于在事件派发线程上可靠地更新表的模型。 这样就不需要冗余地同步模型的内部数据结构。