在 Intellij IDEA 中使用结构搜索,如果我想找到所有实现接口但不扩展另一个类的类,搜索模板应该如何?模板分别是:
class $Class$ implements $Interface$ {}
和
class $Class$ extends $Parent$ {}
分别设置最小值和最大值 1,1 和 0,0。
我尝试了与这个问题类似的事情但没有成功:
在 Intellij IDEA 中使用结构搜索,如果我想找到所有实现接口但不扩展另一个类的类,搜索模板应该如何?模板分别是:
class $Class$ implements $Interface$ {}
和
class $Class$ extends $Parent$ {}
分别设置最小值和最大值 1,1 和 0,0。
我尝试了与这个问题类似的事情但没有成功:
您可以组合这两个模板:
class $Class$ extends $Parent$ implements $Interface$ {}
使用以下变量设置
$Parent$
:
文本/正则表达式Excluded
和启用Apply constrains in type hierarchy
,最小/最大值0,0
$Interface$
:
文本/正则表达式Included
和启用Apply constrains in type hierarchy
,最小/最大值1,1
当我在以下测试代码上使用这些设置进行搜索时,B
会E
找到类。
class Excluded {}
interface Included {}
class A extends Excluded implements Included {}
class B implements Included {}
class C extends Excluded {}
class D extends A {}
class E extends B {}
class F {}
您当然需要使用自己的类和接口名称,而不是 Included 和 Excluded。