代码段如下:
...
operationSubject = Class.forName(aclassname);
Object tempInstance = operationSubject.newInstance();
Field dd;
dd=operationSubject.getDeclaredField(name);
dd.set(tempInstance, "jordan");
... 提示错误:
java.lang.IllegalAccessException: Class com.hncu.my.DBHibernate can not access a member of class com.hncu.my.Student.Student with modifiers ""
希望指教!!!

解决方案 »

  1.   

    因为 你的字段是 priavte 的。 所以要 将 setAccessible 设置为 true;operationSubject = Class.forName(aclassname); 
    Object tempInstance = operationSubject.newInstance(); 
    Field dd; dd=operationSubject.getDeclaredField(name); dd.setAccessible(true);
    dd.set(tempInstance, "jordan"); 
      

  2.   


                            Class c = Class.forName("org.A");
    A a = (A)c.newInstance();//在你代码里这样强行转换为其A类
    Field f = c.getDeclaredField("name");
    f.set(a, "haha");
      

  3.   

    就是这个....把java的权限都干掉~