分类
Android开发

通过java反射机制获取私有或受保护的属性值

android开发中,有时候需要获取类中私有或受保护的属性值,整理代码如下:

import java.lang.reflect.Field;

public class ReflectUtil {

	/**
	* 类classType是否拥有以fieldName命名的属性
	* @param classType
	* @param fieldName
	* @return
	*/
	public static boolean hasDeclaredField(Class classType, String fieldName){
		Field[] fields = classType.getDeclaredFields();
		for(int i=0;i classType, Object obj, String fieldName){
		if(hasDeclaredField(classType, fieldName)){
		try {
		Field field = classType.getDeclaredField(fieldName);
		if(field != null){
		field.setAccessible(true);
		return field.get(obj);
		}
		}catch (Exception e) {
		e.printStackTrace();
		return null;
		}
		}
		return null;
	}

}

原创内容转载请保留出处GEEK笔记(http://www.geekapp.cn/)。

发表评论

电子邮件地址不会被公开。 必填项已用*标注