org.codehaus.groovy.runtime.metaclass

## Class NewInstanceMetaMethod

- java.lang.Object
- - org.codehaus.groovy.reflection.ParameterTypes
  - - groovy.lang.MetaMethod
    - - org.codehaus.groovy.runtime.metaclass.ReflectionMetaMethod
      - - org.codehaus.groovy.runtime.metaclass.NewMetaMethod
        - - org.codehaus.groovy.runtime.metaclass.NewInstanceMetaMethod

- All Implemented Interfaces:
    Cloneable

      public class NewInstanceMetaMethod
      extends NewMetaMethod

  A MetaMethod implementation where the underlying method is really a static helper method on some class but it appears to be an instance method on a class. This implementation is used to add new methods to the JDK writing them as normal static methods with the first parameter being the class on which the method is added.
  Version:
    $Revision: 8959 $
  Author:
    James Strachan

- - ### Field Summary

    - ### Fields inherited from class org.codehaus.groovy.runtime.metaclass.NewMetaMethod

      `bytecodeParameterTypes, EMPTY_TYPE_ARRAY`

    - ### Fields inherited from class org.codehaus.groovy.runtime.metaclass.ReflectionMetaMethod

      `method`

    - ### Fields inherited from class org.codehaus.groovy.reflection.ParameterTypes

      `isVargsMethod, nativeParamTypes, parameterTypes`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `NewInstanceMetaMethod(CachedMethod method)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `getModifiers()`
    `Object` | `invoke(Object object, Object[] arguments)`
    `boolean` | `isStatic()`

    - ### Methods inherited from class org.codehaus.groovy.runtime.metaclass.NewMetaMethod

      `getBytecodeParameterTypes, getDeclaringClass, getOwnerClass`

    - ### Methods inherited from class org.codehaus.groovy.runtime.metaclass.ReflectionMetaMethod

      `getName, getPT, getReturnType, toString`

    - ### Methods inherited from class groovy.lang.MetaMethod

      `checkParameters, clone, doMethodInvoke, equal, equal, getDescriptor, getMopName, getSignature, isAbstract, isCacheable, isMethod, isPrivate, isProtected, isPublic, isSame, processDoMethodInvokeException`

    - ### Methods inherited from class org.codehaus.groovy.reflection.ParameterTypes

      `coerceArgumentsToClasses, correctArguments, getNativeParameterTypes, getParameterTypes, isValidExactMethod, isValidExactMethod, isValidMethod, isValidMethod, isVargsMethod, setParametersTypes`

    - ### Methods inherited from class java.lang.Object

      `equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### NewInstanceMetaMethod

          public NewInstanceMetaMethod(CachedMethod method)

  - ### Method Detail

    - #### isStatic

          public boolean isStatic()

      Overrides:
        `isStatic` in class `MetaMethod`

    - #### getModifiers

          public int getModifiers()

      Overrides:
        `getModifiers` in class `ReflectionMetaMethod`

    - #### invoke

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

      Overrides:
        `invoke` in class `ReflectionMetaMethod`