C-Sharp | Java | Python | Swift | GO | WPF | Ruby | Scala | F# | JavaScript | SQL | PHP | Angular | HTML
Tip: The "throws" statements are auto-generated by Eclipse. You can let Eclipse add these on its own.
GetDeclaredMethod: We use this method with 1 or more arguments. The first argument is the name of the method.
Invoke: This method calls the Method reference. So the executable code in the method is run.
Java program that uses getDeclaredMethod, invoke
import java.lang.reflect.*;
public class Program {
static void test() {
// Say hello.
System.out.println("Hello world");
}
static void bird(String message) {
// Print the argument.
System.out.print("Bird says: ");
System.out.println(message);
}
public static void main(String[] args) throws NoSuchMethodException,
SecurityException, IllegalAccessException,
IllegalArgumentException, InvocationTargetException {
// Use getDeclaredMethod.
// ... This gets the test method by its name.
Method testMethod = Program.class.getDeclaredMethod("test");
// Invoke the test method.
testMethod.invoke(null, null);
// Use getDeclaredMethod.
// ... Get the bird method with a first argument of String.
Method birdMethod = Program.class.getDeclaredMethod("bird",
String.class);
// Invoke the bird method.
// ... First argument is class instance, which is null for a static method.
// Second argument is the actual argument String.
birdMethod.invoke(null, "Seed");
}
}
Output
Hello world
Bird says: Seed
Also: If there is no argument, you can omit the class reference from the getDeclaredMethod call.
And: The second argument is the actual value to be passed to the method—like a String instance.
Strings