【发布时间】:2014-04-20 15:22:39
【问题描述】:
我有一个 Java 接口 A 定义了一个方法,该方法将另一个接口 B 作为参数。 我想知道是否可以在实现类中重载该方法,以将实现接口 B 的对象作为参数提供。 这是我的意思的示例代码:
public interface SampleInterfaceA{
public void sampleMethod(SampleInterfaceB b);
}
public class ClassB implements SampleInterfaceB{}
public class ClassC implements SampleInterfaceB{}
public class SampleClassA implements SampleInterfaceA{
@Override
public void sampleMethod(ClassB b){}
}
public class SampleClassB implements SampleInterfaceA{
@Override
public void sampleMethod(ClassC c){}
}
提前感谢您的帮助。
【问题讨论】:
-
您不需要创建覆盖方法。当您调用 SampleClassA::sampleMethod(B)(B 是 B 类的瞬间)时,它将调用 SampleInterfaceA::sampleMethod(SampleInterfaceB b)。 BTW public void sampleMethod(ClassB b){}
标签: java generics interface overloading