1
我嘗試使用反射API通過傳遞類作爲參數傳遞給下面的方法反思:返回錯誤的領域
private void someMethod(Class<?> objClass) throws IOException {
String className= objClass.getSimpleName();
Map<String, String> fieldsAndDataType = new LinkedHashMap<>();
for (Field field : objClass.getClass().getDeclaredFields())
{
String fieldName = field.getName();
String fieldDataType = field.getType().toString();
fieldsAndDataType.put(fieldName, fieldDataType);
}
Log.d("here","here "+fieldsAndDataType);
}
我打電話了獲得一類的領域,我是這樣做方法就像
someMethod(MyClass.class);
但不是返回我「MyClass的」的領域,其中我得到的字段有:
- 詩里亞lVersionUID
- 名稱
但我的類是具有三個屬性的簡單類和具有一些getter和setter only.However的
字符串的className = objClass.getSimpleName原始數據類型();
正在返回正確的類名。
someMethod()
沒有給我我班的成員變量。 我怎樣才能得到它們?
太棒了.........謝謝,它的工作,但你可以詳細說明一下是什麼被送回給我。 – nobalG