我想通过Class.forName()得到一个对象数组的类
如:
Class.forName("java.lang.String") 得到 String.class
那我要是想得到String[].class 那我的 
Class.forName()应该怎么写?

解决方案 »

  1.   

    Object[] aa = (Object[])Array.newInstance(Class.forName("java.lang.String"), 10);
      

  2.   

    你说的还有点道理,
    我试试.
    我也写了一个,不知道对不.
    Class cla_bean = null;
    Class[] s = null;
    try {
    cla_bean = Class.forName("java.lang.String");
    s = new Class[]{cla_bean};
    } catch (ClassNotFoundException e) {
    e.printStackTrace();
    }
      

  3.   

    Object[] aa = (Object[])Array.newInstance(Class.forName("java.lang.String"), 10);
    后面的哪个10是什么?是数组大小?
    如果是这样就不行了
    首先是我不知道它的大小
      

  4.   

    如果数组大小未知 那里还不如用List<String>
      

  5.   

    在做web Service时,设置返回值类型Class cla_bean = null;
    try {
    cla_bean = Class.forName(bean);} catch (ClassNotFoundException e) {
    e.printStackTrace();
    }
    ....

    //设置返回值类型,返回参数类型是一个对象数组类,如:String[].class.而下面的cla_bean只是一个对象的类如:String.class
    call.setReturnType(qn, cla_bean);不知道上面的call.setReturnType(qn, cla_bean);的第二个参数怎么写.
    不可以直接写String[].class
    要用 Class.forName()得到类
      

  6.   

    String[] arr = new String[1];
    System.out.println(arr.getClass().getName());传arr.getClass()不就行啦?
      

  7.   

    我只是举了个例子,不一定是String,
    cla_bean = Class.forName(bean);
    我程序中的bean这个字符串,是作为一个参数传进来的
      

  8.   

    String[] arr = new String[1];
    System.out.println(arr.getClass().getName());传arr.getClass()不就行啦?
    -------------------------------
    arr不是对象,应该没有getClass()方法吧