大家好
我在使用工厂模式的时候有些不明白的地方,比如我的工厂模式创建类A,B,C的实例,他们都有接口I,但是创建A不需要参数,创建B需要1个参数,创建C需要2个参数,那我工厂类为伪代码大概写成这个样子:
|
然后到了后面,我又多了D和E的实现,但是D需要3个参数,E需要4个参数,这样我就要改工厂类的方法变成:
|
这样我之前的创建A,B,C的代码也要修改了,我总觉得这样不对,但是又不知道要怎么改,请大家指点一下
大家好
我在使用工厂模式的时候有些不明白的地方,比如我的工厂模式创建类A,B,C的实例,他们都有接口I,但是创建A不需要参数,创建B需要1个参数,创建C需要2个参数,那我工厂类为伪代码大概写成这个样子:
|
然后到了后面,我又多了D和E的实现,但是D需要3个参数,E需要4个参数,这样我就要改工厂类的方法变成:
|
这样我之前的创建A,B,C的代码也要修改了,我总觉得这样不对,但是又不知道要怎么改,请大家指点一下
可结合动态反射通过配置来实现,见这个帖子:
http://www.jdon.com/jivejdon/thread/40427#23132746
banq,你好
在实际我现在的使用中,其实这些参数都是通过扫描一些自定义注解的值来获取的,通过配置问的话,我还是不能太明白,链接中的帖子,我理解下来,只是说把类的全限定路径写到配置文件中,然后通过反射来创建对象,但是创建的时候还是要传入参数的啊,这样我传给工厂方法的参数还是在变啊,请指教。