如果兩個接口需要實現同名的方法,則調用方法()兩次。 我需要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