উত্তর:
// String.class here is the parameter type, that might not be the case with you
Method method = clazz.getMethod("methodName", String.class);
Object o = method.invoke(null, "whatever");
পদ্ধতিটি getDeclaredMethod()
পরিবর্তে ব্যক্তিগত ব্যবহারের ক্ষেত্রে getMethod()
। এবং setAccessible(true)
পদ্ধতি অবজেক্ট কল ।
String methodName= "...";
String[] args = {};
Method[] methods = clazz.getMethods();
for (Method m : methods) {
if (methodName.equals(m.getName())) {
// for static methods we can use null as instance of class
m.invoke(null, new Object[] {args});
break;
}
}
public class Add {
static int add(int a, int b){
return (a+b);
}
}
উপরের উদাহরণে, 'অ্যাড' একটি স্থিতিশীল পদ্ধতি যা যুক্তি হিসাবে দুটি পূর্ণসংখ্যার গ্রহণ করে।
নিম্নলিখিত স্নিপেটটি ইনপুট 1 এবং 2 সহ 'অ্যাড' পদ্ধতিতে কল করতে ব্যবহৃত হয়।
Class myClass = Class.forName("Add");
Method method = myClass.getDeclaredMethod("add", int.class, int.class);
Object result = method.invoke(null, 1, 2);
রেফারেন্স লিঙ্ক ।