我有两种类型的编辑器。一种是
我希望客户端代码简单地使用
有没有办法确保我的
JTextArea
的子类,另一种是JTable
的子类(JTextArea
和JTable
都是JComponent
的子类)。 我想让我的两个类TextAreaEditor
和TableEditor
实现接口Editor
,该接口只有一个方法public String getText()
。我希望客户端代码简单地使用
Editor
接口。问题在于,所有我的Editor
都使用JComponent
的方法,例如setEnabled(bool)
。由于我的编辑器是一个接口,我无法使其扩展JComponent,因此我必须在调用这些方法时使用实现而不是接口。所以我认为,我可以将Editor
简单地作为JComponent
的子类,然后将我的类扩展它。但问题在于,像TextAreaEditor
这样的类已经扩展了如JTextArea
之类的某些类,因此我无法使它们扩展另一个类。有没有办法确保我的
Editor
类是JComponent,并且我的具体编辑器类是Editor
和JComponent
的子类?
editor.setEnabled(true)
时,我遇到了问题,因为setEnabled()
是JComponent类的一个方法。@Asterisk 问题在于TextAreaEditor需要扩展JTextArea,因此它不能同时扩展抽象类。@erickson 是的,这对我来说看起来是一个更好的标题。很难措辞。 - gsgx