黑马程序员技术交流社区

标题: 用反射开发框架技术 [打印本页]

作者: 冯培军    时间: 2012-9-28 00:22
标题: 用反射开发框架技术
有如下部分代码:
InputStream is = new FileInputStream("config.properties");
Properties props = new Properties();
props.load(is);
is.close();
String className = props.getProperty("className");    //获取字节码的属性
Collection collections = (Collection)Class.forName(className);    //字节码属性的字节码为什么会是一个集合?

作者: 钢伢仔    时间: 2012-9-28 00:43
顽强探索中!
作者: 孔肖    时间: 2012-9-28 10:39
这里你没有弄清楚张老师的意思,这里老师的意思是用集合的配置信息来创建相应的集合。
String className = props.getProperty("className");  // 这句是通过键值对中的键来获取值,也就是获取要创建集合的名称。
Collection collection = (Collection) Class.forName(className).newInstance();   // 这里你少些了“.newInstance()”,
有了集合名称之后,就可以通过反射类来创建集合,而不是只拿到它的字节码。
作者: 谭立文    时间: 2012-9-28 11:11
Properties  这个类是积聚了IO和集合的特性的,可以很方便的以键值对的方式获取value,
clazzName = java.util.ArrayList    //这里clazzName------>对应的类名称是一个  字符串 知道一个类的完整名称后  我们就可以通过反射来构造其实例,所以这样可以很方便我们
的操作,如果要换成其他的类 只需要修改配置文件中对应键的值就O了。




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