public class EqualsHashCodeCheck extends Check
Checks that classes that override equals() also override hashCode().
Rationale: The contract of equals() and hashCode() requires that equal objects have the same hashCode. Hence, whenever you override equals() you must override hashCode() to ensure that your class can be used in collections that are hash based.
An example of how to configure the check is:
<module name="EqualsHashCode"/>
Constructor and Description |
---|
EqualsHashCodeCheck() |
Modifier and Type | Method and Description |
---|---|
void |
beginTree(DetailAST aRootAST)
Called before the starting to process a tree.
|
void |
finishTree(DetailAST aRootAST)
Called after finished processing a tree.
|
int[] |
getDefaultTokens()
Returns the default token a check is interested in.
|
void |
visitToken(DetailAST aAST)
Called to process a token.
|
destroy, getAcceptableTokens, getClassLoader, getFileContents, getLines, getRequiredTokens, getTabWidth, getTokenNames, init, leaveToken, log, log, setClassLoader, setFileContents, setMessages, setTabWidth, setTokens
getId, getMessageBundle, getSeverity, getSeverityLevel, log, log, log, log, log, log, log, log, log, setId, setSeverity
configure, contextualize, finishLocalSetup, getConfiguration, setupChild
public int[] getDefaultTokens()
getDefaultTokens
in class Check
TokenTypes
public void beginTree(DetailAST aRootAST)
public void visitToken(DetailAST aAST)
visitToken
in class Check
aAST
- the token to processpublic void finishTree(DetailAST aRootAST)
finishTree
in class Check
aRootAST
- the root of the tree