Inspectopedia Help

Clashing trait methods

Reports classes which implement two or more traits that contain methods with same signatures.

The result of calling such methods might be unexpected.

The quick-fix adds an explicit overriding method.


trait T1 { def foo() {} } trait T2 { def foo() {} } class X implements T1, T2 {} // will be called new X().foo()

After the quick-fix is applied:

class X implements T1, T2 { @Override Object foo() { return } }

Inspection Details

Available in:

IntelliJ IDEA 2023.3, Qodana for JVM 2023.3


Groovy, 233.SNAPSHOT

Last modified: 13 July 2023