我有一些使用外部库(mvn)方法的方法。所以我不能适应它。当我尝试覆盖该方法时:
void在*类中不公开;无法从外部访问错误 包 无法访问该外部库
如何从外部类(库)覆盖方法的问题,该方法使用私有方法扩展抽象类或类。
logout = new Class(arg1, arg2) {
@Override
public boolean ovMethod(){
someMethod(true);
}
方法ovMethod()来自(外部类,由maven下载)类:
Class extends AbstractClass {
public abstract class AbstractClass {
void someMethod(boolean arg) {
}
}
}
答案 0 :(得分:0)
一般来说,您不应该覆盖不应被覆盖的方法。但作为最后的手段,如果方法是包私有(a.k.a。默认可见性),您可以在同一个包中创建自己的类,因此它有权覆盖该方法:
package same.package_as.superclass;
public class MyClass extends Class {
@Override
void someMethod(boolean arg) {
// custom implementation
}
}