我有两个类 Foo 和 Bar,其中 Bar 扩展了 Foo。
在超类中,有一个方法 f()。子类覆盖此方法并故意抛出异常,以便永远不会在 Bar 的实例上调用 f()。
class Foo {
public void f() {
// does something useful
}
}
class Bar extends Foo {
@Override
public void f() {
throw new UnsupportedOperationException("Srsly, thou shalt not");
}
}
现在这是我的问题:是否有一些注释可以用于与 IDE(例如 Eclipse)通信的被覆盖方法上,而不应该调用它?我发现自己想轻轻地滥用@deprecated 标记,以便在用户处理 Bar 实例时,Eclipse 中的自动完成列表跨越该方法,但我想知道是否有更好的选择。
class Bar extends Foo {
/**
* @deprecated
*/
@Override
public void f() {
throw new UnsupportedOperationException("Srsly, thou shalt not");
}
}