Java Method Call invoke(final Method method, final Object obj, final Object... args)

Here you can find the source of invoke(final Method method, final Object obj, final Object... args)

Description

Invokes a method using reflection.

License

Apache License

Parameter

Parameter Description
method the method to invoke
obj the object to invoke the method on
args any arguments to the method

Exception

Parameter Description
RuntimeException if invocation fails

Return

the result

Declaration

public static Object invoke(final Method method, final Object obj, final Object... args) 

Method Source Code

//package com.java2s;
/**/*from  w ww  . j av  a2 s . c om*/
 * Copyright (C) [2013] [The FURTHeR Project]
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *         http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;

public class Main {
    /**
     * Invokes a method using reflection. Note that this method wraps all exceptions as
     * unchecked {@link RuntimeException}'s, and that it is caller's responsibility to
     * handle every such exception.
     *
     * @param method
     *            the method to invoke
     * @param obj
     *            the object to invoke the method on
     * @param args
     *            any arguments to the method
     * @return the result
     * @throws RuntimeException
     *             if invocation fails
     */
    public static Object invoke(final Method method, final Object obj, final Object... args) {
        try {
            return method.invoke(obj, args);
        } catch (final IllegalArgumentException e) {
            throw new RuntimeException(e);
        } catch (final IllegalAccessException e) {
            throw new RuntimeException(e);
        } catch (final InvocationTargetException e) {
            throw new RuntimeException(e);
        }
    }
}

Related

  1. invoke(Class clazz, String methodName, Object instance, Class[] signature, Object... args)
  2. invoke(Class cls, String methodName, Object... parameter)
  3. invoke(Class returnType, Method m, Object obj, Object... args)
  4. invoke(E e, String methodName)
  5. invoke(final Method m, final Object obj, final Object... args)
  6. invoke(final Object component, final Method method, final Class type, final String value)
  7. invoke(final Object instance, final String method, final Object... parameters)
  8. invoke(final Object instance, final String methodName, final Class[] methodParams, final Object[] args)
  9. invoke(final Object object, final String methodName, final Class[] methodParamTypes, final Object[] methodParamValues)