我有一个父类P
和子类A
和B
。
我想找到f
中方法A
的所有用法。
因此p.f()
或a.f()
而不是b.f()
,因为实例B b
无法调用A.f
。
我知道我能找到
直接调用A.f
。这错过了:
P p = new A();
p.f();
调用P.f
和任何替代。这有太多误报。
我知道仅使用编译时信息总会出现误报,但可能会更少。
答案 0 :(得分:1)
您可以为此使用结构搜索(编辑|查找|结构搜索...)。使用类似这样的查询:
$x$.f()
具有表达式类型过滤器A|P
。这将在f()
或A
类型的表达式上找到对P
的所有调用。如果您在A
和P
之间的层次结构中还有其他类,则还需要将它们添加到表达式类型过滤器中。