/** 直接设置对象属性值,无视private/protected修饰符,不经过setter函数. */
  public static void setFieldValue(
      final Object object, final String fieldName, final Object value) {
    Field field = getDeclaredField(object, fieldName);

    if (field == null)
      throw new IllegalArgumentException(
          "Could not find field [" + fieldName + "] on target [" + object + "]");

    makeAccessible(field);

    try {
      field.set(object, value);
    } catch (IllegalAccessException e) {
      VALog.e("不可能抛出的异常:{}" + e.getMessage());
    }
  }
  /** 直接读取对象属性值,无视private/protected修饰符,不经过getter函数. */
  public static Object getFieldValue(final Object object, final String fieldName) {
    Field field = getDeclaredField(object, fieldName);

    if (field == null)
      throw new IllegalArgumentException(
          "Could not find field [" + fieldName + "] on target [" + object + "]");

    makeAccessible(field);

    Object result = null;
    try {
      result = field.get(object);
    } catch (IllegalAccessException e) {
      VALog.e("不可能抛出的异常{}" + e.getMessage());
    }
    return result;
  }