## com.puppycrawl.tools.checkstyle.checks.imports
Class AvoidStaticImportCheck

    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.imports.AvoidStaticImportCheck

All Implemented Interfaces:
  Configurable, Contextualizable

    public class AvoidStaticImportCheck

extends Check

Check that finds static imports.

Rationale: Importing static members can lead to naming conflicts between class' members. It may lead to poor code readability since it may no longer be clear what class a member resides (without looking at the import statement).

An example of how to configure the check is:

     <module name="AvoidStaticImport">
       <property name="excludes"
           value="java.lang.System.out,java.lang.Math.*"/>
     </module>

The optional "excludes" property allows for certain classes via a star notation to be excluded such as java.lang.Math.* or specific static members to be excluded like java.lang.System.out for a variable or java.lang.Math.random for a method.

If you exclude a starred import on a class this automatically excludes each member individually.

For example: Excluding java.lang.Math.* will allow the import of each static member in the Math class individually like java.lang.Math.PI

Version:
  1.0
Author:
  Travis Schneeberger

Constructor Summary
`AvoidStaticImportCheck()`

Method Summary
`int[]` `getDefaultTokens()` Returns the default token a check is interested in.
`void` `setExcludes(String[] aExcludes)` Sets the list of classes or static members to be exempt from the check.
`void` `visitToken(DetailAST aAST)` Called to process a token.

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
`getCustomMessages, getId, getMessageBundle, getSeverity, getSeverityLevel, 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

### AvoidStaticImportCheck

    public AvoidStaticImportCheck()

Method Detail

### getDefaultTokens

    public int[] getDefaultTokens()

  Description copied from class: `Check`
  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`

### setExcludes

    public void setExcludes(String[] aExcludes)

  Sets the list of classes or static members to be exempt from the check.

  Parameters:
    `aExcludes` - a list of fully-qualified class names/specific static members where static imports are ok

### visitToken

    public void visitToken(DetailAST aAST)

  Description copied from class: `Check`
  Called to process a token.

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

Copyright © 2001-2011. All Rights Reserved.