【发布时间】:2014-01-14 11:29:15
【问题描述】:
我有一个超类,比如说BaseClass和两个子类,比如说SubclassA和SubclassB,它们没有任何其他关系他们之间,但他们的父类。
在我的代码中的很多地方,我需要调用两个子类都具有但父类没有的方法......而且我发现自己重复了很多看起来像这样的代码:
if (obj instanceof SubclassA) {
// stuff
} else if (obj instanceof SubclassB) {
// same stuff
}
第一个想法应该是将“东西”放入超类中的方法中,但我不能因为该超类是其他没有这种行为的子类的父类...
那么...有没有办法避免重复所有代码?
也许两个子类的共同超类本身就是超类的子类?
【问题讨论】:
-
这段代码在SuperClass里面吗?超类不知道子类
标签: java oop inheritance