首页 > 学院 > 开发设计 > 正文

反射的用处

2019-11-08 18:33:47
字体:
来源:转载
供稿:网友

今天群里突然有人问,反正有什么用。想了想不就是动态获取类的信息吗? 最近在学java,东西好多。

在设计模式里面

平时正常初始化一个对象都new来生成,new就造成了代码耦合,为了解耦合。干脆不让自己new了。平时写过最多的工厂模式,一般有if或者switch来判断参数传入,返回对应的类的对象,例:Factory.getInstance(“args”)。当我增加新的类的时候,我们就要去修改工程类,以适应新的业务。有反射模式,(Base)Class.forName(className).newInstance(),这样就可以生成类对应的对象,而且在新增加类的时候,工厂方法保持不变。

DB操作

对应一个table一般个DAO文件,用来对表进行添删改查。但是突然有10个表,也只是添删改查。我们机械的复制10个DAO文件是多么蠢的事情。这个时候可以用到反射,约定只需要每个表名创建一个对象即可,类的成员函数截掉set就获得全部字段,拼sql完成数据操作。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表