黑马程序员技术交流社区

标题: 关于反射 [打印本页]

作者: 房东告诉对方    时间: 2015-7-14 21:39
标题: 关于反射
构造方法:Constructor类,它代表某一个类中的一个构造方法。
①得到某个类的所有的构造方法:Constructor[] constructors = Class.forName("java.lang.String").getConstructors();
②得到某一个构造方法:Constructor constructor = Class.forName("java.lang.String").getConstructor(StringBuffer.class);
③创建示例对象:
    通常方式:String str = new String(new StringBuffer("abc"));
    反射方式:String str = (String)constructor.newInstance(new StringBuffer("abc"));
代码示例:
    Constructor<String> constructor1 = String.class.getConstructor(StringBuffer.class);
    String s2 = (String)constructor1.newInstance(new StringBuffer("abc"));
    System.out.println(s2.charAt(2));
④Class.newInstance()方法
    该方法是内部先得到默认的构造方法,然后通过构造方法获得实例对象。
   
反射方式顺序就是:String.class-->constructor-->String.






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2