package haven;
import java.lang.reflect.Field;
public class Reflect {
public static Object getFieldValue(Object obj, String name){
Object v = null;
try {
Field f = getField(obj, name);
v = f.get(obj);
} catch (NoSuchFieldException ignored) {
} catch (IllegalAccessException ignored) {}
return v;
}
public static int getFieldValueInt(Object obj, String name){
int v = 0;
try {
Field f = getField(obj, name);
v = f.getInt(obj);
} catch (NoSuchFieldException ignored) {
} catch (IllegalAccessException ignored) {}
return v;
}
public static double getFieldValueDouble(Object obj, String name){
double v = 0;
try {
Field f = getField(obj, name);
v = f.getDouble(obj);
} catch (NoSuchFieldException ignored) {
} catch (IllegalAccessException ignored) {}
return v;
}
private static Field getField(Object obj, String name) throws NoSuchFieldException {
Field f = obj.getClass().getDeclaredField(name);
f.setAccessible(true);
return f;
}
}