我开发了一个class AutoCompleteTextArea extends JTextArea
,并且我将它用于我的javaScript控制台:
问题是,我不想让我的类只扩展JTextField
,并且正在寻找一种方法来使它更普遍地扩展所有JTextComponent
子类,以便我的代码可以重用(因为我的实现并没有使用JTextArea
的任何空间能力,所以它似乎是正确的。)
我尝试使用委托并接收JTextComponent
实现作为构造函数参数,但由于我覆盖paintComponent()
,因此无法实现。
我看到的唯一另一种可能性是复制代码并分别扩展每个JTextComponent
子类(对我来说似乎不太好)。
如果Java具有多重继承性,我认为我可以提出一个解决方案,但没有它,这似乎是不可能的事情。
有什么建议吗?