Reports methods that are named identically to their class.
While such naming is allowed by the Java language, it's usually a mistake, as it was intended to create a constructor. Such naming is bad practice.
Example:
class MyClass {
int val;
// Method MyClass named identically to its containing class.
// Likely, 'void' was added by mistake.
void MyClass(int val) {
this.val = val;
}
}
When appropriate, a quick-fix converts the method to a constructor:
class MyClass {
int val;
MyClass(int val) {
this.val = val;
}
}
Another quick-fix renames the method.