黑马程序员技术交流社区

标题: 帮忙看下 这段反射的代码 [打印本页]

作者: 疯子的昨天    时间: 2014-2-2 16:49
标题: 帮忙看下 这段反射的代码
               在运用反射创建实例对象时:
例如这句话:  String str = (String) constructor.newInstance(new StringBuffer("abc"));
在这段话中为什么要加(String)这句话。
张老师好像说的是计算机在编译的时候只看左边,运行看右边。
加这句话好像就是为了让编译器识别,不报错。但是又加在右边。
那不是和上面那句话矛盾了吗? 百思不得其解啊。


作者: 651012160    时间: 2014-2-2 17:36
如果不加(String)那么右边的返回值类型是Object。相当于将一个Object类型值赋给了String。这样做编译器会报错。所以得加上强制类型转换!




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