public final class MissingOverrideCheck extends AbstractCheck
This class is used to verify that the Override
annotation is present when the inheritDoc javadoc tag is present.
Rationale: The Override
annotation helps
compiler tools ensure that an override is actually occurring. It is
quite easy to accidentally overload a method or hide a static method
and using the Override
annotation points
out these problems.
This check will log a violation if using the inheritDoc tag on a method that is not valid (ex: private, or static method).
There is a slight difference between the Override annotation in Java 5 versus Java 6 and above. In Java 5, any method overridden from an interface cannot be annotated with Override. In Java 6 this behavior is allowed.
As a result of the aforementioned difference between Java 5 and Java 6, a
property called javaFiveCompatibility
is available. This
property will only check classes, interfaces, etc. that do not contain the
extends or implements keyword or are not anonymous classes. This means it
only checks methods overridden from java.lang.Object
Java 5 Compatibility mode severely limits this check. It is recommended to
only use it on Java 5 source
<module name="MissingOverride"> <property name="javaFiveCompatibility" value="true"/> </module>
AutomaticBean.OutputStreamOptions
Modifier and Type | Field and Description |
---|---|
static String |
MSG_KEY_ANNOTATION_MISSING_OVERRIDE
A key is pointing to the warning message text in "messages.properties"
file.
|
static String |
MSG_KEY_TAG_NOT_VALID_ON
A key is pointing to the warning message text in "messages.properties"
file.
|
Constructor and Description |
---|
MissingOverrideCheck() |
Modifier and Type | Method and Description |
---|---|
int[] |
getAcceptableTokens()
The configurable token set.
|
int[] |
getDefaultTokens()
Returns the default token a check is interested in.
|
int[] |
getRequiredTokens()
The tokens that this check must be registered for.
|
void |
setJavaFiveCompatibility(boolean compatibility)
Sets Java 5 compatibility mode.
|
void |
visitToken(DetailAST ast)
Called to process a token.
|
beginTree, clearMessages, destroy, finishTree, getClassLoader, getFileContents, getLine, getLines, getMessages, getTabWidth, getTokenNames, init, isCommentNodesRequired, leaveToken, log, log, log, setClassLoader, setFileContents, setTabWidth, setTokens
finishLocalSetup, getCustomMessages, getId, getMessageBundle, getSeverity, getSeverityLevel, setId, setSeverity
configure, contextualize, getConfiguration, setupChild
public static final String MSG_KEY_TAG_NOT_VALID_ON
public static final String MSG_KEY_ANNOTATION_MISSING_OVERRIDE
public MissingOverrideCheck()
public void setJavaFiveCompatibility(boolean compatibility)
In Java 5, this check could flag code that is not valid for the Override annotation even though it is a proper override. See the class documentation for more information.
Set this to true to turn on Java 5 compatibility mode. Set this to false to turn off Java 5 compatibility mode.
compatibility
- compatibility or notpublic int[] getDefaultTokens()
AbstractCheck
getDefaultTokens
in class AbstractCheck
TokenTypes
public int[] getAcceptableTokens()
AbstractCheck
getAcceptableTokens
in class AbstractCheck
TokenTypes
public int[] getRequiredTokens()
AbstractCheck
getRequiredTokens
in class AbstractCheck
TokenTypes
public void visitToken(DetailAST ast)
AbstractCheck
visitToken
in class AbstractCheck
ast
- the token to processCopyright © 2001–2018. All rights reserved.