当前位置: 首页 > 面试题库 >

为什么Java Swing中的JTable使用Vector作为构造函数参数?

谷梁玺
2023-03-14
问题内容

有谁知道为什么JTable在Java Swing中将Vector用作构造函数参数:like JTable(Vector rowData, Vector columnNames),尽管Vector被标记为过时的集合。(我也知道还有其他选择,但是使用Vector更为方便)。它与线程同步有关吗?


问题答案:

虽然Vector既不作废也不作废,但它是原始作品的遗产DefaultTableModel;后来,它“经过改装以实现该List接口”。
Vector已同步,但是正确使用此功能以有效地依赖于实现细节。而是依靠其方法提供 事前发生 关系的类的
内存一致性属性

。例如,实现和,对于在事件分发线程上可靠地更新表的模型特别方便。这样就无需冗余地同步模型的内部数据结构。
__SwingWorkerFuture<T>``RunnableFuture<T>



 类似资料:
  • 我正试图用BlueJ完成一项为uni完成的任务,但我在第一个障碍上遇到了障碍。 在赋值中,我们得到了一个类,以及该类的构造函数、方法和参数的名称。我们不允许更改这些,因为赋值部分地由测试单元标记(或类似的东西)。 该类的一个构造函数如下所示 我已经(部分)完成了 我不明白的是为什么-为什么他们使用作为构造函数的参数?这样做有什么好处? (我想这样做肯定有好处(如果没有,功能就不会存在),但我不明白

  • 问题内容: 必须使用无参数构造函数(像Hibernate这样的工具会在此构造函数上使用反射来实例化对象)。 我得到了这个手挥手的答案,但是有人可以进一步解释吗?谢谢 问题答案: hibernate,并且通常通过反射创建对象的代码用于创建类的新实例。此方法需要一个公共的无参数构造函数才能实例化该对象。对于大多数用例,提供无参数构造函数不是问题。 有一些基于序列化的技巧可以解决没有no-arg构造函数

  • 问题内容: 根据Node.js手册: 如果您希望模块导出的根是一个函数(例如构造函数),或者想一次导出一个完整的对象而不是一次构建一个对象,则将其分配给module.exports而不是export 。 给出的示例是: 并像这样使用: 我的问题:为什么示例不使用正方形作为对象?以下内容是否有效,是否会使示例更加“面向对象”? 问题答案: CommonJS模块允许两种方法来定义导出的属性。无论哪种情

  • 我的代码中只有参数化构造函数,需要通过它进行注入。 我想刺探参数化构造函数以注入模拟对象作为junit的依赖项。 但我们有什么东西可以在构造函数中注入模拟对象并对其进行监视吗?。

  • 当Java中给出参数构造函数时,为什么默认的无参数构造函数会失败? 这个设计有什么意义? 例如:

  • 我问这个问题是因为在Python和Java中,如果父类构造函数需要0参数,则不需要调用super()。 Javascript 蟒蛇 Java