多个重载合法时调用哪种方法?

Cod*_*nny 3 java parameters interface multiple-inheritance

假设您有一个接口A和一个接口B.假设Sprite该类实现了两个接口.

假设另一个类有一个方法foo(A object),并且还有一个方法foo(B object).

当我将方法的实例传递Sprite给方法时,两者都会被调用foo()吗?如果没有,哪个优先?

And*_*yle 8

使用方法重载(在这里使用),调用方法在编译时根据保存的变量的(声明的)类型来解析Sprite.

由于方法调用不明确,因此在手动向下转换引用以解决歧义之前,这将无法编译.

  • 我认为这个链接更详细一点:http://java.sun.com/docs/books/jls/third_edition/html/expressions.html#15.12.2.5 (2认同)