gpt4 book ai didi

java - 为什么 JComboBox 和 ComboBoxModel 类没有 List 或 Collection 构造函数?

转载 作者:行者123 更新时间:2023-11-30 04:12:27 25 4
gpt4 key购买 nike

我知道这可能是基于意见的,但它可以回答后续问题:

Vector 有一个适用于任何 Collection 的构造函数,那么为什么 JComboBox 和关联的类只使用 Vector?是否可以对 DefaultComboBoxModel 进行子类化以利用更广泛的初始化类型?

private class MyComboBoxModel<E> extends DefaultComboBoxModel<E> {
private MyComboBoxModel (Collection<E> input) {
super(new Vector<E>(input));
}
}

或者我应该只使用 DefaultComboBoxModel 并在调用构造函数之前创建一个 vector ?

Vector<Contact> vectorList = new Vector<Contact>(getList());
DefaultComboBoxModel<Contact> myModel = new DefaultComboBoxModel<Contact>(vectorList);

最佳答案

看来将来会添加 Collection 功能。来自 ListModel,ComboBoxModel 的 super 接口(interface):

This class loosely implements the java.util.Vector API, in that it implements the 1.1.x version of java.util.Vector, has no collection class support, and notifies the ListDataListeners when changes occur. Presently it delegates to a Vector, in a future release it will be a real Collection implementation.

http://docs.oracle.com/javase/7/docs/api/javax/swing/DefaultListModel.html

关于java - 为什么 JComboBox 和 ComboBoxModel 类没有 List 或 Collection 构造函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19293837/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com