A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

代码如下:
  1. import java.io.*;
  2. import java.util.*;
  3. public class  ReflectionTest
  4. {
  5.         public static void main(String[] args) throws Exception
  6.         {
  7.                 String name="cn.he.myreflect.MyText";
  8.                 Class classzz=Class.forName(name);
  9.                 classzz.newInstance();
  10.         }
  11. }
  12. 错误提示:
  13. Exception in thread "main" java.lang.IllegalAccessException: Class ReflectionTes
  14. t can not access a member of class cn.he.myreflect.MyText with modifiers ""
  15.         at sun.reflect.Reflection.ensureMemberAccess(Reflection.java:65)
  16.         at java.lang.Class.newInstance0(Class.java:349)
  17.         at java.lang.Class.newInstance(Class.java:308)
  18.         at ReflectionTest.main(ReflectionTest.java:15)
复制代码

评分

参与人数 1技术分 +1 收起 理由
刘芮铭 + 1

查看全部评分

4 个回复

倒序浏览
[code]package edu.csdn.net;
import java.io.*;
import java.util.*;
public class  ReflectionTest
{
        public static void main(String[] args) //throws Exception
        {
                try
                {
                String name="cn.he.myreflect.MyText";
                Class classzz=Class.forName(name);
                classzz.newInstance();
        }
        catch(Exception e)
           {
                System.out.println(e.toString());
           }
      }
}

评分

参与人数 1技术分 +1 收起 理由
刘芮铭 + 1

查看全部评分

回复 使用道具 举报
您将需要调用的方法setAccessible(true)就行了,你应该是调用了一个私有的方法
import java.io.*;
import java.util.*;
public class  ReflectionTest
{
        public static void main(String[] args) throws Exception
        {
                String name="cn.he.myreflect.MyText";
              try{
                 Method method = name.getClass.getMethod("newInstance");  
                                  if(!method .isAccessible()) {
                                         method .setAccessible(true);
                                }
                                }catch(Exception e){
                                }
        }
}

评分

参与人数 1技术分 +1 收起 理由
刘芮铭 + 1

查看全部评分

回复 使用道具 举报
两个:
getDeclaredXxx()
和setAccessible(true)
回复 使用道具 举报
多谢大家,已解决。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马