如果两个接口需要实现同名的方法,则调用方法()两次。 我需要2个方法为2个不同的接口实现,我怎样才能实现他们两个做不同的事情?两个接口需要实现同名的方法
public class MainClass implements BarObj.BarInt, FooObj.FooInt{
MainClass(){
}
void trigger()
{
new BarObj(this);
new FooObj(this);
}
@Override
public void method() {
System.out.println("I DONT KNOW WHICH METHOD");
}
public static void main(String[] args) {
new MainClass().trigger();
}
}
public class BarObj {
interface BarInt
{
void method();
}
public BarObj(BarInt _barInt)
{
_barInt.method();
}
}
public class FooObj {
interface FooInt
{
public void method();
}
public FooObj(FooInt _fooInt)
{
_fooInt.method();
}
}
我想编译器会在实现类中寻找一个重写的方法,即使你有2个包含相同方法的接口。所以你不能区分。 – Truthira
可能的重复:https://stackoverflow.com/questions/2801878/implementing-two-interfaces-in-a-class-with-same-method-which-interface-method –
做两个类,一个实现一个接口,另一个实现另一个,并创建一个主类,启动两个对象 – Eliethesaiyan