Invokes the underlying method represented by this
Method
object, on the specified object with the specified parameters.
Invokes the underlying method represented by this
Method
object, on the specified object with the specified parameters.
Individual parameters are automatically unwrapped to match
primitive formal parameters, and both primitive and reference
parameters are subject to method invocation conversions as
necessary.
If the underlying method is static, then the specified obj
argument is ignored. It may be null.
If the number of formal parameters required by the underlying method is
0, the supplied args
array may be of length 0 or null.
If the underlying method is an instance method, it is invoked
using dynamic method lookup as documented in The Java Language
Specification, Second Edition, section 15.12.4.4; in particular,
overriding based on the runtime type of the target object will occur.
If the underlying method is static, the class that declared
the method is initialized if it has not already been initialized.
If the method completes normally, the value it returns is
returned to the caller of invoke; if the value has a primitive
type, it is first appropriately wrapped in an object. However,
if the value has the type of an array of a primitive type, the
elements of the array are not wrapped in objects; in
other words, an array of primitive type is returned. If the
underlying method return type is void, the invocation returns
null.
Returns:
the result of dispatching the method represented by
this object on obj
with parameters
args
Parameters:
- obj - the object the underlying method is invoked from
- args - the arguments used for the method call
Throws:
- IllegalAccessException - if this Method
object
enforces Java language access control and the underlying
method is inaccessible.
- IllegalArgumentException - if the method is an
instance method and the specified object argument
is not an instance of the class or interface
declaring the underlying method (or of a subclass
or implementor thereof); if the number of actual
and formal parameters differ; if an unwrapping
conversion for primitive arguments fails; or if,
after possible unwrapping, a parameter value
cannot be converted to the corresponding formal
parameter type by a method invocation conversion.
- InvocationTargetException - if the underlying method
throws an exception.
- NullPointerException - if the specified object is null
and the method is an instance method.
- ExceptionInInitializerError - if the initialization
provoked by this method fails.