我有以下课程:
public abstract class Parent {
public abstract boolean checkName(String str);
}
public class Child1 extends Parent {
public static final String NAME = "CHILD1";
@Override
public boolean checkName(String str) {
//check input validity:
if (!NAME.equals(str)) {
throw new IllegalArgumentException("some thing");
}
//...
}
}
public class Child2 extends Parent {
public static final String NAME = "CHILD2";
@Override
public boolean checkName(String str) {
//check input validity:
if (!NAME.equals(str)) {
throw new IllegalArgumentException("some thing");
}
// ...
}
}
你可以看到两个类中的check input validity
部分checkName
方法是相同的。我知道没有办法将这个联合部分移动到checkName
父类的抽象方法,但是有没有办法避免这种重复?