Metoda invoke () a clasei Method Invocă metoda de bază reprezentată de acest obiect Method, pe obiectul specificat cu parametrii specificați. Parametrii individuali automat pentru a se potrivi cu parametrii formali primitivi. Atât parametrii primitivi, cât și cei de referință sunt supuși conversiilor de invocare a metodei, după cum este necesar.
Sintaxă
public Object invoke(Object obj, Object... args) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException
Parametru
obj - obiectul din care este invocată metoda de bază
argumente - argumentele folosite pentru apelul de metodă
Se intoarce
Rezultatul expedierii metodei reprezentate de acest obiect pe obj cu parametrii args.
Arunca
IllegalAccessException
IllegalArgumentException
InvocationTargetException
NullPointerException
ExceptionInInitializerError -
Exemplul 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); } }Testează-l acum
Ieșire:
processing test null