Java reflection call or invoke private method

The invoke() method is used to call public method in java using reflection API. We have use getDeclaredMethod() to get private method and turn off access check to call it.

Example

TestClass.java

package com.w3spoint;
 
public class TestClass {
	public void display(String message){
		System.out.println(message);
	}
}

ReflectionTest.java

package com.w3spoint;
 
import java.lang.reflect.Method;
 
public class ReflectionTest {
	public static void main(String args[]){
		try {
			TestClass testClass = new TestClass();
			Class c=Class.forName("com.w3spoint.TestClass");  
			Method method = c.getDeclaredMethod("display", String.class);
			method.setAccessible(true);
			method.invoke(testClass, "Hello w3spoint");
		} catch (Exception e) {
			e.printStackTrace();
		}  
	}
}

Output

Hello w3spoint
Content Protection by DMCA.com
Please Share