The following is a simple example of invoking a known method through the reflection mechanism of Java
Packagecom.togeek.mvntest;Importjava.lang.reflect.InvocationTargetException;ImportJava.lang.reflect.Method;/** * @authorTogeek using Reflection to call methods * @addresshttp://www.cnblogs.com/togeek/* @Date: November 29, 2015 18:01:31*/ Public classreftest {@SuppressWarnings ("Unchecked") Public Static voidMain (string[] args)throwsnosuchmethodexception, SecurityException, Illegalaccessexception, IllegalArgumentException, invocationtargetexception {Apple Apple=NewApple (); Apple.setname ("I'm an apple."); System.out.println ("Normal Call:" +apple.getname ()); Class Appleclass=Apple.getclass (); Method M1= Appleclass.getdeclaredmethod ("GetName"); Method m2= Appleclass.getdeclaredmethod ("SetName", String.class); System.out.println ("Reflection Call:" +M1.invoke (apple)); System.out.println ("Reflection Set Value: Return value is null----" + M2.invoke (Apple, "I am the Apple for Togeek!") ")); System.out.println ("Call again:" +M1.invoke (apple)); }}classapple{PrivateString name; PublicString GetName () {returnname; } Public voidsetName (String name) { This. Name =name; } }
Results:
Normal Call: I am apple reflection call: I am an apple reflection set value: The return value is null----NULL call again: I am the Apple for Togeek!
Calling class methods of unknown classes through Java reflection