这样的方法名称可能令人混淆,因为子类中的方法看似重写,实则隐藏了超类不可访问的方法。 此外,如果此方法在超类中的可见性日后发生变化,可能会静默地更改子类的语义,否则会导致编译错误。
建议使用快速修复重命名该方法。
示例:
public class Super {
private void test() {
}
}
public class Sub extends Super {
void test() { // 令 'Super.test()' 为 public 将导致编译错误
// 令 'Super.test()' 为 package-private,将使得 'Sub.test()' 重写
}
}