如何利用反射去访问一个私有的方法
2012-02-20 23:00
453 查看
package com.java.lesson.reflect;
public class PrivateTest {
private String name = "zhang";
public String getName() { return name; }
private String sayTo(String name) { return " hello ----- " + name; }
}
===================
package com.java.lesson.reflect;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
public class TestPrivate {
public static void main(String[] args) throws Exception {
PrivateTest p = new PrivateTest();
Class<?> classType = p.getClass();
Method method = classType.getDeclaredMethod("sayTo", new Class[] { String.class });
method.setAccessible(true);
Object object = method.invoke(p, new Object[] { "sxz" });
System.out.println(object);
// =========================================================
Field field = classType.getDeclaredField("name");
field.setAccessible(true);
field.set(p,"lisi");
System.out.println(p.getName());
}
}
public class PrivateTest {
private String name = "zhang";
public String getName() { return name; }
private String sayTo(String name) { return " hello ----- " + name; }
}
===================
package com.java.lesson.reflect;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
public class TestPrivate {
public static void main(String[] args) throws Exception {
PrivateTest p = new PrivateTest();
Class<?> classType = p.getClass();
Method method = classType.getDeclaredMethod("sayTo", new Class[] { String.class });
method.setAccessible(true);
Object object = method.invoke(p, new Object[] { "sxz" });
System.out.println(object);
// =========================================================
Field field = classType.getDeclaredField("name");
field.setAccessible(true);
field.set(p,"lisi");
System.out.println(p.getName());
}
}
相关文章推荐
- 如何利用反射去访问一个私有的方法
- java利用反射访问类的私有(private)属性及方法
- java利用反射来调用一个类的私有方法和成员变量
- 【转】【Java】利用反射技术,实现对类的私有方法、变量访问
- 利用反射机制访问类中的私有方法
- 利用反射访问私有属性、调用私有方法
- java利用反射访问类的私有(private)属性及方法
- 利用反射调用私有方法、访问私有属性
- 利用java反射访问私有方法
- 如何通过反射访问私有变量和私有方法
- 利用反射机制访问类中的私有方法
- java利用反射来调用一个类的私有方法
- java中的反射机制——如何访问私有成员的私有方法
- 【原创】.NET中利用反射访问和修改类中的私有成员
- 利用 JSP 中的反射机制封装一个 Servlet ,就不用每张表的每个方法都写一个 Servlet
- 本类的方法可以访问本类的任何一个对象的私有域、
- (原创)利用扩展方法,给 IEnumerable<T> 增加一个生成 Html 的 CheckBox 标签的方法,不用 C# 中的反射技术
- C# 利用反射,遍历获得一个类的所有属性名,方法名,成员名.
- 利用反射对私有属性/方法进行设置/调用
- java通过反射技术访问私有变量和方法