Die invoke()-Methode der Method-Klasse ruft die zugrunde liegende Methode auf, die durch dieses Method-Objekt dargestellt wird, für das angegebene Objekt mit den angegebenen Parametern. Einzelne Parameter passen automatisch zu primitiven formalen Parametern. Sowohl Grund- als auch Referenzparameter unterliegen bei Bedarf einer Methodenaufrufkonvertierung.
Syntax
public Object invoke(Object obj, Object... args) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException
Parameter
obj – das Objekt, von dem aus die zugrunde liegende Methode aufgerufen wird
args - die für den Methodenaufruf verwendeten Argumente
Kehrt zurück
Das Ergebnis des Sendens der von diesem Objekt dargestellten Methode an obj mit den Parametern args.
Werfen
IllegalAccessException
IllegalArgumentException
InvocationTargetException
NullPointerException
ExceptionInInitializerError -
Beispiel 1
//import statement import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; public class ReflectMethodinvokeExample1 { private static void process(String str) { System.out.println('processing ' + str); } public static void main(String... args) throws NoSuchMethodException, InvocationTargetException, IllegalAccessException { Method m = ReflectMethodinvokeExample1.class.getDeclaredMethod('process', String.class); Object rv = m.invoke(null, 'test'); System.out.println(rv); } }Testen Sie es jetzt
Ausgabe:
processing test null