Find field 2 : Field « Reflection « Java

Find field 2


import java.lang.reflect.Field;

public class Util{

   * @param clz
   * @param expression
   * @return introspected field
  public static Field findField(Class<?> clz, String expression) {
    Field field = null;
    try {
      field = clz.getField(expression);
    } catch (Exception e) {
      Class<?> tmp = clz;
      while(tmp != null && tmp != Object.class) {
        Field[] fields = tmp.getDeclaredFields();
        for (int i = 0; i < fields.length; i++) {
          if(fields[i].getName().equals(expression)) {
            return fields[i];
        tmp = tmp.getSuperclass();
    return field;


Related examples in the same category

1.Field Reflection
2.How to set public field objects
3.Class Reflection: field informationClass Reflection: field information
4.Object Reflection: get field valueObject Reflection: get field value
5.Object Reflection: set valueObject Reflection: set value
6.Get field of a class object and set or get its value
7.All Fields Snippet
8.Field modifiers: isSynthetic, isEnumConstant
9.Field with annotations
10.Set private field value
11.Get fields of a class object
12.Get all object accessible public fields
13.Getting the Field Objects of a Class Object: By obtaining a list of all declared fields.
14.Getting the Field Objects of a Class Object: By obtaining a list of all public fields, both declared and inherited.
15.Getting the Field Objects of a Class Object: By obtaining a particular Field object.
16.Get all declared fields from a class
17.Retrieving a Predefined Color by Name
18.Get a variable value from the variable name
19.Fetches all fields of all access types from the supplied class and super classes
20.Checks whether the specified class contains a field matching the specified name.
21.whether given field is a "public static final" constant
22.Process bean properties getter by applying the JavaBean naming conventions.
23.Fetches the property descriptor for the named property of the supplied class
24.Find Field
25.Return a list of all fields (whatever access status, and on whatever superclass they were defined) that can be found on this class.
26.Get all fields of a class.
27.Get class field/property
28.Accessible Field Iterator
29.Adds all Fields (from Class.getFields) to the list
30.Retrieve a value from a property
31.Set the value of the field of the object to the given value.
32.Fast Property accessor for a single class.