2017-02-11 75 views
1

我有兩個接口是這樣的:如何顯式實現在java中具有相同簽名的2接口方法?

interface IA{ 
    void show(); 
} 

interface IB{ 
    void show(); 
} 

現在我想明確地實現這兩個接口的方法爲一類。

在C#中,我可以通過使用「顯式接口實現方法」像這樣做:

interface IA 
{ 
    void show(); 
} 
interface IB 
{ 
    void show(); 
} 

class Derived : IA, IB 
{ 
    void IA.show() 
    { 
     Console.WriteLine("Hello C#!"); 
    } 
    void IB.show() 
    { 
     Console.WriteLine("Hello World !"); 
    } 

} 

有什麼辦法或者對Java任何關鍵字來解決這個問題?

+0

我不這麼認爲,兩個接口都會使用相同的方法 – JohnnyAW

回答

2

只要這兩種方法具有相同的返回類型,它們只能作爲類內的單個方法實現。

否則,它們不能實現並且會看到編譯錯誤。

JAVA沒有辦法在每個接口顯式實現每個方法。

+1

OP不問他如何從兩個不同的接口實現同一個方法。相反,他想在這種情況下知道如何根據來自第一個或第二個接口的實際實例給出兩個實現。 Java不允許這樣做。 – davidxxx

+0

這就是我在_中回答的問題:「JAVA中沒有辦法明確實現每個接口的每種方法。」_ – KAD

+0

好的。在「否則,它們不能被實現並且查看編譯錯誤」之前引用返回類型要求並不是很清楚。並鏈接到:「JAVA中沒有辦法明確地實現每個接口的每個方法。」這是兩個不同的具體問題。 – davidxxx

相關問題