Reflection API
을 통해 개체의 복사본을 만들고 싶습니다. 여기 내 코드 :Reflection API를 통해 개체의 복사본을 만들려면 어떻게해야합니까?
private <T> T copy(T entity) throws IllegalAccessException, InstantiationException {
List<Field> fields = new ArrayList<Field>();
Field[] retrievedFields = entity.getClass().getDeclaredFields();
for (Field field : retrievedFields) {
fields.add(field);
}
T newEntity = (T) entity.getClass().newInstance();
for (Field field : fields) {
field.setAccessible(true);
field.set(newEntity, field.get(entity));
}
return newEntity;
}
그러나 필드 값을 얻는 방법을 모르겠습니다.
'설정'이 있습니다. 'get'이 없을까요? javadoc을 보셨습니까? –
'get (Object)'메소드가 있습니다. 개체가 필드입니까? – Alex
javadoc을 읽으십시오. 'Object'가 필드이고'field'가 필드 인 경우, 요점은 무엇입니까? ('Object'는 필드의 값을 얻고 자하는 객체입니다.) –