java反射技術

1:通過反射獲取對象的某個屬性值,如果是私有的成員變量,則需要設置setAccessible(true)

   public static String[] convertToStringArray(List<?> list,String targetField) {
        String[] ids = new String[list.size()];
        for (int i = 0; i < list.size(); i++) {
            Object obj=list.get(i);
            try {
                Field filed =obj.getClass().getDeclaredField(targetField);
                filed.setAccessible(true);/////如果要訪問私有的方法,所以我們在這裏將可訪問設置爲true,則JVM不會執行訪問控制檢查;如果是共有方法則不需要設置
                ids[i]=filed.get(obj).toString();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
        return ids;
    }

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章