博为峰小博老师:
同ListModel一样,ComboBoxModel是一个接口,里面定义了两个方法,即setSelectedltem()与getSelectedItem()。这两个方法的目的是让用户选取某个项目后,可正确地显示出用户所选取的项目。JComboBox是利用ComboBoxModel实现的,有点类似于ListModel。不过ComboBoxModel接口是继承自ListModel接口,如果要利用ComboBoxModel来构造JComboBox,除了要实现ComboBoxModel的两个方法外,还必须实现ListModel定义的4个方法,这种做法可以说是相当麻烦。
在介绍JList时曾经提到AbstractListModel抽象类。这个抽象类实现了ListModel接口中的addListDataListener()和removeListDataListener()两个方法。因此,如果继承AbstractListModel,则不用实现这两个方法,只须实现getElementAt(), getSize(), setSelectedItem()与getSelectedItem()共4个方法。这种方法比较简单。