У меня есть метод, который требует что-то вроде Double.class
как один из его входов;
например.
someOutput = SomeObj.someMethod("parameter",Double.class);
У меня есть еще один класс, в котором есть множество полей разных типов данных, которые я хотел бы подавать в качестве входных данных для этого метода вместо явной записи Double.class
из Integer.class
и т.д. и т.д.
Я знаю, что это связано с отражением Java, но я не совсем уверен, как делать то, что я хочу. Я пытаюсь что-то вроде этого, но он не работает:
for(Field field : Class.forName(MyClassWithLotsOfFields.class.getCanonicalName()).getFields()){
someOutput = SomeObj.someMethod("parameter",field.getClass());
//Do more stuff here...
}
но field.getClass()
не дает мне действительный класс поля из MyClassWithLotsOfFields
, но вместо этого java.lang.reflect.Field
любые идеи о том, как делать то, что я хочу?