我有兩個不同的接口,它們採用相同的方法,但不實現或擴展對方。這兩個接口每個擴展了另一個類,它實現了接口方法更改類變量類型
然後我有一個類位於調用接口方法的獨立包中。
所以這個類有調用接口方法的方法,它們都是相同的。
public void doThis(){
connection.doThis();
}
public void doThat(){
connection.doThat();
}
public void doAnother(){
connection.doAnother();
}
現在,我想爲這兩個接口1和接口2變量連接工作。
我的想法是設置連接爲一個類變量
Object connection
,然後去改變它輸入取決於條件接口1或接口2:
if(this){
//condition which converts connection to type interface1
}
else{
//condition which converts connection to type interface2
}
我怎麼做到這一點。我可以這樣做嗎?
我已經給出了一個無法更改的界面,但沒有實現遠程。但我的項目使用RMI。所以我在一個實現Remote的獨立包中創建了第二個接口。因此,兩個不同接口的原因是他做同樣的事情。
爲什麼不使用泛型? –
如果兩個接口都有完全相同的方法,那麼你不需要做任何事情,把引用類型保存爲'Interface1'或'Inteface2'。 –
爲什麼每個實現類都有兩個相同的接口?很可能您只需要一個接口和兩個實現,在這種情況下,您可以讓您的成員變量爲該接口的類型。 – amalloy