我有两种不同的方法需要在我的程序中重复,例如方法A和方法B。
程序中有些部分需要调用methodA,有些部分需要调用methodB,有些部分需要两者都调用。这些方法的实现在整个程序中是相同的。
我应该如何构建类和方法以减少重复?我首先想到的是我希望 Java 支持多重继承。
我想到的第二件事是将每个方法放在自己的接口(interface)中,并让类根据需要实现它们,但方法的实现在整个程序中完全相同,因此必须定义在每个类中实现听起来不是一个好主意。
如果我能说服团队中的其他人,我只能使用 Java 6. 7,因此 Java 8 附带的默认方法实现不是一个选项。
附:我意识到问题的标题是一个非常糟糕的问题,但我想不出一种简单的方法来解释这个问题。如果有的话请推荐更好的。
最佳答案
从我的头顶上下来:
public interface Foo{
public Object processA(Object first);
public Object processB(Ojbect second);
}
public abstract class AbstractFoo implements Foo{
protected AbstractFoo(){}
public Object processA(Object o){
// do stuff
return null;
}
public Object processB(Object o){
// do more stuff
return null;
}
}
public class ConcreteFoo extends AbstractFoo {
}
关于java - 继承类中的多个方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19658057/