Package: org.codehaus.groovy.runtime.metaclass

## [Java] Class NewStaticMetaMethod

- org.codehaus.groovy.runtime.metaclass.NewStaticMetaMethod

-     public class NewStaticMetaMethod
      extends NewMetaMethod

  A MetaMethod implementation where the underlying method is really a static helper method on some class. This implementation is used to add new static methods to the JDK writing them as normal static methods with the first parameter being the class on which the method is added.

- - Inherited fields
    Fields inherited from class | Fields
    --- | ---
    `class NewMetaMethod` | `EMPTY_TYPE_ARRAY, bytecodeParameterTypes`
    `class ReflectionMetaMethod` | `method`
    `class MetaMethod` | `EMPTY_ARRAY`

  - ### Constructor Summary

    Constructors
    Constructor and description
    `NewStaticMetaMethod(CachedMethod method)` Constructs a new NewStaticMetaMethod.

  - ### Methods Summary

    Methods
    Type Params | Return Type | Name and description
    --- | --- | ---
    `` | `public int` | `getModifiers()` Returns the modifiers for this method (PUBLIC | STATIC).
    `` | `public Object` | `invoke(Object object, Object[] arguments)` Invokes the underlying static method with null as the first argument.
    `` | `public boolean` | `isStatic()` Indicates this method is static.

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `class NewMetaMethod` | `getBytecodeParameterTypes, getDeclaringClass, getOwnerClass`
    `class ReflectionMetaMethod` | `getCachedMethod, getDeclaringClass, getModifiers, getName, getPT, getReturnType, invoke, toString`
    `class MetaMethod` | `checkParameters, clone, doMethodInvoke, equal, equal, getDeclaringClass, getDescriptor, getModifiers, getMopName, getName, getReturnType, getSignature, invoke, isAbstract, isCacheable, isDefault, isMethod, isSame, processDoMethodInvokeException, toString`
    `class ParameterTypes` | `coerceArgumentsToClasses, correctArguments, getNativeParameterTypes, getPT, getParameterTypes, isValidExactMethod, isValidExactMethod, isValidMethod, isValidMethod, isVargsMethod, isVargsMethod, setParametersTypes`

- - ### Constructor Detail

    - #### public NewStaticMetaMethod(CachedMethod method)

      Constructs a new NewStaticMetaMethod.

      Parameters:
        `method` - the cached static method

  - ### Method Detail

    - #### public int getModifiers()

      Returns the modifiers for this method (PUBLIC | STATIC).

      Returns:
        PUBLIC and STATIC modifiers

    - #### public Object invoke(Object object, Object[] arguments)

      Invokes the underlying static method with null as the first argument. This adapts static method calls to the underlying static method signature.

      Parameters:
        `object` - the object (ignored for static methods)
        `arguments` - the method arguments
      Returns:
        the method return value

    - #### public boolean isStatic()

      Indicates this method is static.

      Returns:
        true, as this wraps a static method