我的申请表有以下课程:
MyTextField
,扩展了JTextField
。
但是,我需要以下类中的MyTextField
内的方法:
MyPasswordField
,扩展了JPasswordField
。
Java中不允许多重继承,因此我想避免复制粘贴85%的类。如何克服这个“限制”?
答案 0 :(得分:4)
使用定义共享功能的帮助程序类。在MyTextField
和MyPasswordField
中的每一个中声明一个字段以保存辅助类的实例。根据共享功能的需要,中继调用帮助程序,然后只需编码一次。
答案 1 :(得分:0)
为什么不使用Composition而不是Inheritance。 您的MyPasswordField类可以包含myTextField的实例变量,然后您可以使用您的实例及其方法来使用该方法。 让我知道如果我走错了路,你会发现不同的东西。
答案 2 :(得分:0)
您可以在具有静态方法的Helper类的帮助下实现此目的,因此您不需要在testfields类中保留辅助类的实例。