import java.util.HashMap;
import java.util.Map;
public class RunnableDemo {
public static void main(String[] args) {
Map<String, NewRunnable> cmd = new HashMap<>();
cmd.put("methodA", str -> System.out.println("This is a method " + str));
cmd.put("methodB", str -> System.out.println("This is a method " + str));
cmd.get("methodB").run("B");
}
}
interface NewRunnable {
void run(String str);
}
This is a method B
import java.util.HashMap;
import java.util.Map;
public class RunnableDemo02 {
public static void main(String[] args) {
Map<String, Runnable> cmd = new HashMap<>();
cmd.put("MethodA", () -> System.out.println("This is a method A."));
cmd.put("MethodB", () -> System.out.println("This is a method B."));
cmd.get("MethodB").run();
}
}
This is a method B.
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.util.HashMap;
import java.util.Map;
public class RunnableDemo03 {
public static void main(String[] args) throws NoSuchMethodException, InvocationTargetException, IllegalAccessException {
Map<String, Method> cmd = new HashMap<>();
cmd.put("MethodA", RunnableDemo03.class.getMethod("methodA"));
cmd.put("MethodB", RunnableDemo03.class.getMethod("methodB"));
cmd.get("MethodB").invoke(null);
}
public static void methodA() {
System.out.println("Method A.");
}
public static void methodB() {
System.out.println("Method B.");
}
}
Method B.
网友评论