·
#include __FILE__

所以,得出结论:方案三最优这里不够严谨,在不用改动A或C代码上看确实不错,但是如果B改动过大,需要费很大代价转化为C再给A调用的话,不如直接B给A调用,直接改一下A的代码就好了

不过我觉得你这个例子很奇怪,C的身份更像是一个虚基类或接口,然后B或B1或B2是不同的实现,A调用C暴露的方法,这不像是模块化,更像是一种多态

而模块化更像是如果我有一个很大的业务,我把这个业务分为ABCDEFG等等小模块,然后其中的某一个部分可以再被拿来使用,且更好维护

Replies
3

good ,可以,自己会完善知识点。

哦对了是我打错了。将A从C调用数据这里是把C改为B更好,将业务和实现逻辑耦合。我猜这是其他贴吧的作者想说的。

但他这里是采用JAVA的多态。通过多态来实现业务和实现逻辑的具体操作方法吧,这样才能更好的把抽象的业务得以在逻辑上实现。我没猜错的话。