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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

  1. class Fanshe
  2. {
  3.         public static void main(String[] args) throws Exception
  4.         {
  5.                 Class cls = Dodo.class;
  6.                 Constructor ctc = Dodo.class.getConstructor(String.class);
  7.                 Dodo dod = (Dodo)ctc.newInstance("abcd");
  8.                 dod.show();
  9.         }
  10. }
  11. class Dodo
  12. {
  13.         String s;
  14.         Dodo(String s)
  15.         {
  16.                 this.s = s;
  17.         }
  18.         public void show()
  19.         {
  20.                 System.out.println(s);
  21.         }
  22. }
复制代码



报错?? 这样写不对吗?

2 个回复

正序浏览
经济 发表于 2015-6-3 08:06
不对,getConstructor(.....)方法只能,访问字节文件的公用构造方法,正确代码如下: ...

package com.dyn.itheima.test3;

import java.lang.reflect.Constructor;

public class Fanshe {
        public static void main(String[] args) throws Exception {
                Class cls = Dodo.class;
                Constructor ctc = cls.getDeclaredConstructor(String.class);
                Dodo dod = (Dodo) ctc.newInstance("abcd");
                dod.show();
        }
}

class Dodo {
        String s;

        Dodo(String s) {
                this.s = s;
        }

        public void show() {
                System.out.println(s);
        }
}
回复 使用道具 举报
不对,getConstructor(.....)方法只能,访问字节文件的公用构造方法,正确代码如下:
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马