一个类的两个接口有同名函数,JAVA如何调用

关系如下:


A(type)--->X(type)---Y(type)


B(type)------------------


 意思是,接口A、接口B都有type函数(而且签名一样),X实现type,Y继承自X,也实现了type函数。那么调用type的时候,调用哪个?


 编译后的类Y,实际上同时保存两个type的来源。所以确实存在调用的问题。吾研究后,总结两个原则:


  • 样子原则。比如吾把Y造型为A、X,调用的时候就会搜索来源于A的接口;B也是如此。
  • 就近原则。比如直接调用Y的type,那么肯定是最近的那个。最近的是B的type。
上一篇:数据结构(一) 单链表的实现-JAVA


下一篇:PHP V5.3 中的新特性,第 1 部分: 对象接口的变化