感觉自己有一个很致命的弱点就是不敢行动。怕出错,尤其是在机房中更是突出这个缺点。在开始用抽象工厂时,先查了很多资料之后才开始编程,原以为可以万无一失,经历了之后才发现根本没有任何人写的东西可以天衣无缝的解决你所有的问题,就像一个人一样如果你自己不去实践一下看再多的理论也只不过是纸上谈兵。这些看似浅显的道理在我的编程路上却忘记了。
我的配置文件
在工厂中的代码为:
本以为按着大话设计模式中写的那样就是以上代码应该没有问题,但是后来在调试过程中总是显示找不到对象的类。也就是说工厂没有成功的创建接口类。在反复检查之后对比自己的代码跟书上的有何不同,发现自己的代码框架由于是在EA中导出的所以加上了namespace。这样上面这个D层的类的完整名称应该是SqlDAL.SqlDAL.BasicDateSetDAL类,而我以上的代码建立的是SqlDAL.BasicDataSetDAL类这样的话当然找不到对应的类会报错说有Null。并且以上代码中顺序也有问题,本打算尽可能多的抽出一下复用代码,但是忽略的顺序的问题,classdal开始没有赋值,所以classname只是sqlDQL而classdal部分为null,而在function里面只是复制了classdal却没有重新给classname赋值。这样的话classname最终为null于是会提示没有找到对象。
只要稍加修改就可以如下:
原文地址:http://blog.csdn.net/u010892841/article/details/42170847