接口A继承接口B后,如何用接口A调用接口B扩展的方法

interface B implement A;
interface C implement A;

classB implement B;
classC implement C;

此时
A a= new ClassB();
A a= new ClassC();

可以用a调用B和C从A中继承过来的方法

但是如果有时候B或者C当中有一个要扩展, 不得不在A中定义新的方法,

能否实现扩展B后, 依然能用A调用ClassB 和ClassC中新扩展的方法。

其实就是想连续使用两次策略模式

阅读 2.8k
1 个回答

扩展IB或IC为什么要在A中定义新方法呢? 扩展不应该修改原有接口.
IB和IC都是extend IA吧? 然后CB实现IB, CC实现IC.
使用IB扩展IA时, IA是感知不到这个扩展的, 当然也就不能通过IA调用IB的方法了.

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题