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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© xinzhang 中级黑马   /  2016-4-11 10:31  /  222 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

// 如何生成获取到字节码文件对象的实例对象。
  Class clazz = Class.forName("cn.itcast.bean.Person");//类加载
// 直接获得指定的类型
  clazz = Person.class;
  // 根据对象获得类型
  Object obj = new Person("zhangsan", 19);
  clazz = obj.getClass();
  Object obj = clazz.newInstance();//该实例化对象的方法调用就是指定类中的空参数构造函数,给创建对象进行初始化。当指定类中没有空参数构造函数时,该如何创建该类对象呢?请看method_2();
public static void method_2() throws Exception {
  Class clazz = Class.forName("cn.itcast.bean.Person");
  //既然类中没有空参数的构造函数,那么只有获取指定参数的构造函数,用该函数来进行实例化。
  //获取一个带参数的构造器。
  Constructor constructor = clazz.getConstructor(String.class,int.class);
  //想要对对象进行初始化,使用构造器的方法newInstance();
  Object obj = constructor.newInstance("zhagnsan",30);
  //获取所有构造器。
  Constructor[] constructors = clazz.getConstructors();//只包含公共的
  constructors = clazz.getDeclaredConstructors();//包含私有的
  for(Constructor con : constructors) {
   System.out.println(con);
  }
}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马