Metodų klasės metodas invoke () Iškviečia pagrindinį metodą, kurį reprezentuoja šis Method objektas, nurodytame objekte su nurodytais parametrais. Individualūs parametrai automatiškai atitinka primityvius formalius parametrus. Primityviems ir atskaitos parametrams prireikus taikomos metodo iškvietimo konversijos.
registro atmintis
Sintaksė
public Object invoke(Object obj, Object... args) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException
Parametras
obj - objektas, iš kurio iškviečiamas pagrindinis metodas
args - metodo iškvietimui naudojami argumentai
Grąžina
Metodo, kurį reprezentuoja šis objektas, siuntimo į obj su parametrais args rezultatas.
Mesti
IllegalAccessException
IllegalArgumentException
InvocationTargetException
NullPointerException
ExceptionInitializerError –
1 pavyzdys
//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); } }Išbandykite dabar
Išvestis:
processing test null