## com.puppycrawl.tools.checkstyle.checks.coding
Class IllegalTypeCheck

    java.lang.Object
      com.puppycrawl.tools.checkstyle.api.AutomaticBean
          com.puppycrawl.tools.checkstyle.api.AbstractViolationReporter
              com.puppycrawl.tools.checkstyle.api.Check
                  com.puppycrawl.tools.checkstyle.checks.AbstractFormatCheck
                      com.puppycrawl.tools.checkstyle.checks.coding.IllegalTypeCheck

All Implemented Interfaces:
  Configurable, Contextualizable

    public final class IllegalTypeCheck

extends AbstractFormatCheck

Checks that particular class are never used as types in variable declarations, return values or parameters. Includes a pattern check that by default disallows abstract classes.

Rationale: Helps reduce coupling on concrete classes. In addition abstract classes should be thought of a convenience base class implementations of interfaces and as such are not types themsleves.

Author:
  Simon Harris

Constructor Summary
`IllegalTypeCheck()` Creates new instance of the check.

Method Summary
`int[]` `getDefaultTokens()` Returns the default token a check is interested in.
`String[]` `getIgnoredMethodNames()` Get the list of ignored method names.
`String[]` `getIllegalClassNames()` Get the list of illegal variable types.
`String[]` `getLegalAbstractClassNames()` Get the list of legal abstract class names.
`void` `setIgnoredMethodNames(String[] aMethodNames)` Set the list of ignore method names.
`void` `setIllegalClassNames(String[] aClassNames)` Set the list of illegal variable types.
`void` `setLegalAbstractClassNames(String[] aClassNames)` Set the list of legal abstract class names.
`void` `visitToken(DetailAST aAST)` Called to process a token.

Methods inherited from class com.puppycrawl.tools.checkstyle.checks.AbstractFormatCheck
`getFormat, getRegexp, setCompileFlags, setFormat`

Methods inherited from class com.puppycrawl.tools.checkstyle.api.Check
`beginTree, destroy, finishTree, getAcceptableTokens, getClassLoader, getFileContents, getLines, getRequiredTokens, getTabWidth, getTokenNames, init, leaveToken, log, log, setClassLoader, setFileContents, setMessages, setTabWidth, setTokens`

Methods inherited from class com.puppycrawl.tools.checkstyle.api.AbstractViolationReporter
`getId, getMessageBundle, getSeverity, getSeverityLevel, log, log, log, log, log, log, log, log, log, setId, setSeverity`

Methods inherited from class com.puppycrawl.tools.checkstyle.api.AutomaticBean
`configure, contextualize, finishLocalSetup, getConfiguration, setupChild`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### IllegalTypeCheck

    public IllegalTypeCheck()

  Creates new instance of the check.

Method Detail

### getDefaultTokens

    public int[] getDefaultTokens()

  Returns the default token a check is interested in. Only used if the configuration for a check does not define the tokens.

  Specified by:
    `getDefaultTokens` in class `Check`
  Returns:
    the default tokens
  See Also:
    `TokenTypes`

### visitToken

    public void visitToken(DetailAST aAST)

  Called to process a token.

  Overrides:
    `visitToken` in class `Check`
  Parameters:
    `aAST` - the token to process

### setIllegalClassNames

    public void setIllegalClassNames(String[] aClassNames)

  Set the list of illegal variable types.

  Parameters:
    `aClassNames` - array of illegal variable types

### getIllegalClassNames

    public String[] getIllegalClassNames()

  Get the list of illegal variable types.

  Returns:
    array of illegal variable types

### setIgnoredMethodNames

    public void setIgnoredMethodNames(String[] aMethodNames)

  Set the list of ignore method names.

  Parameters:
    `aMethodNames` - array of ignored method names

### getIgnoredMethodNames

    public String[] getIgnoredMethodNames()

  Get the list of ignored method names.

  Returns:
    array of ignored method names

### setLegalAbstractClassNames

    public void setLegalAbstractClassNames(String[] aClassNames)

  Set the list of legal abstract class names.

  Parameters:
    `aClassNames` - array of legal abstract class names

### getLegalAbstractClassNames

    public String[] getLegalAbstractClassNames()

  Get the list of legal abstract class names.

  Returns:
    array of legal abstract class names

Back to the Checkstyle Home Page