package com.dh.foundation.utils; import java.lang.reflect.Field; /** * java反射工具类 * Created By: Seal.Wu * Date: 2016/5/6 * Time: 14:58 */ public class ReflectUtils { /** * 获取类对象的字段对象(包含其所有的父类) * * @param tClass 要获取于哪个类 * @param fieldName 字段名称 * @param <T> 类型参数 * @return 字段对象 */ public static <T> Field getDeclaredField(Class<T> tClass, String fieldName) { try { return tClass.getDeclaredField(fieldName); } catch (NoSuchFieldException e) { final Class<? super T> superclass = tClass.getSuperclass(); if (superclass == Object.class) { DLoggerUtils.e(e); return null; } else { return getDeclaredField(superclass, fieldName); } } } }