一般情况下你说的也不错,我们也是这样用的,但是有时我们基于接口编程的时候,要实例化的对象的类是不一定的,如果全部写死到代码里面,有一天突然客户想要改业务了,还要回来改代码,但是改代码之后还要重新编译,重新发布,很浪费时间的,
比如本来List<String> list=new ArrayList<String>();的突然有一天客户说他们就想换成LinkedList<String>而且是不带解释的,我们就要改程序了。
但是群众的想法是无限的,他们把想要做业务的类写在了配置文件里面,然后用反射来动态生成业务类,然后就有了上面的做法了。
其实一般情况下我们也不会这么做的,但是为了显示反射是怎么用的,就这么写出来而已,
反射一般是在面向接口编程的时候用才比较比较不鸡肋,你想想要是你知道了一类有什么方法了,你还会用反射的方法去调用那个方法吗,那不是无聊嘛。 |