【问题标题】:Java Reflection get field value [duplicate]Java反射获取字段值[重复]
【发布时间】:2021-08-08 12:38:00
【问题描述】:

我正在尝试通过反射获取字段的值:

  for (Field field : entity.getClass().getDeclaredFields()) {

            log.info("[Field name] {} ", field);
            try {
                log.info("[Field value] {} ", field.get(entity));
            } catch (Exception e) {
                log.error(e.getMessage());
            }
        }
}

但我有这个错误:

 cannot access a member of class com.model.Dog with modifiers "private"

【问题讨论】:

    标签: java


    【解决方案1】:

    你忘了让这个字段可以访问:

    for (Field field : entity.getClass().getDeclaredFields()) {
        log.info("[Field name] {} ", field);
        try {
            field.setAccessible(true);
            log.info("[Field value] {} ", field.get(entity));
        } catch (Exception e) {
            log.error(e.getMessage());
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-04
      • 2013-02-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多