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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 林豪 中级黑马   /  2012-5-18 23:00  /  1382 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

import java.lang.reflect.Constructor;

public class ReflectTest {

        public static void main(String[] args)throws Exception {
       
                Constructor constructor1 = String.class.getConstructor(StringBuffer.class);
                String str2 = (String)constructor1.newInstance(new StringBuffer("abc"));
                System.out.println(constructor1.toString());
        }
  
}
一开始从传入参数就知道是StringBuffer类的,那为什么还要用constructor方法特地绕一圈回来在求StringBuffer呢?
还有constructor的实际应用?

2 个回复

倒序浏览
  Constructor constructor1 = String.class.getConstructor(StringBuffer.class);             -------->通过类的字节码取得构造函数的实例
String str2 = (String)constructor1.newInstance(new StringBuffer("abc"));-------->通过构造函数创建一个实例,因为返回的是Object 所以要向下转型 (String)
            

评分

参与人数 1技术分 +1 收起 理由
贠(yun)靖 + 1

查看全部评分

回复 使用道具 举报
constructor是对创建对象的函数的引用(指针),是构造函数,只有js对象才有
说的它的作用.就是维护对象的原型链。
这种做法可以通过对象回朔到父类l的原型
望采纳
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马