我有一个子类,它需要一个注解,在父类中声明已删除。执行此操作的最佳方法是什么?
public class Parent
@MyAnnoation
String foobar;
}
public class Child extends Parent {
//here I only want to remove the @MyAnnotation from String foobar;
}
我想避免的是“覆盖”成员
public class Child extends Parent {
String foobar;
}
因为这有几个缺点(因为它“覆盖”了底层父成员 = this.foobar 可以不同于 super.foobar)...
1.) 是否有一种简单的方法可以从子类(此处为子类)的父类中删除注释?
2.) 在子类中删除注解的官方方法是什么?
非常感谢!马库斯
最佳答案
如果你想做这样的事情,你可能应该再看看你的设计。
我认为,如果有一种方法可以删除运行时注释,那么我们不推荐这样做,因为您会删除类定义的一部分。例如删除成员访问修饰符。
这可能会对您的逻辑产生意想不到的结果,因为其他代码可能依赖这些定义来做出运行时决策。
如果您需要在运行时修改类定义,那么一开始就不应该以这种方式定义此类。
关于java - 删除子类中的注释?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6467511/