ITPub博客

首页 > IT职业 > IT职场 > How to call private method from ano

How to call private method from ano

IT职场 作者:gabbro 时间:2021-09-09 09:02:04 0 删除 编辑

How to call private method from another class in java

You can call the private method from outside the class by changing the runtime behaviour of the class.

By the help of java.lang.Class class and java.lang.reflect.Method class, we can call private method from any other class.


Example of calling private method from another class

Let's see the simple example to call private method from another class.

public class A {  
  private void message(){System.out.println("hello java"); }  
}  
import java.lang.reflect.Method;  
public class MethodCall{  
public static void main(String[] args)throws Exception{  

    Class c = Class.forName("A");  
    Object o= c.newInstance();  
    Method m =c.getDeclaredMethod("message", null);  
    m.setAccessible(true);  
    m.invoke(o, null);  
}  
}  

Another example to call parameterized private method from another class

Let's see the example to call parameterized private method from another class

class A{  
  private void cube(int n){System.out.println(n*n*n);}  
}  
import java.lang.reflect.*;  
class M{  
  public static void main(String args[])throws Exception{  
    Class c=A.class;  
    Object obj=c.newInstance();  

    Method m=c.getDeclaredMethod("cube",new Class[]{int.class});  
    m.setAccessible(true);  
    m.invoke(obj,4);  
  }
}  

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/2873/viewspace-2798786/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-08-19

  • 博文量
    85
  • 访问量
    725