This program ran fine when test()
method was public
but as soon as I changed its modifier to private
it showed Run time error.Can anybody explain why?
package ObjectClass;
import java.lang.reflect.Method;
public class reflect8 {
public static void main(String[] args) throws Exception {
Class c1 = Class.forName("ObjectClass.Reflect8A");
Object obj = c1.newInstance();
Method m1 = c1.getDeclaredMethod("test");
m1.invoke(obj);
}
}
class Reflect8A {
private void test() {
System.out.println("from test...");
}
}