2012-11-27 87 views
0

我想寫得到2個參數的方法:Java泛型語法問題

  1. 的接口。
  2. 實現該接口的類。

我希望它是通用的(編譯時安全類型)。

有沒有辦法? 如果沒有,最新的選擇是什麼?

是否有一個選項可以獲得一個接口的泛型參數?我該申報嗎? ?

+6

發佈您的代碼。 –

回答

5

有些事情是這樣的?

public <I, K extends I> void method(I i, K k){ 

    } 

在上述方法的第一個參數是一個接口,並且第二參數是實現該接口的任何類。

Interface1 i1; 
    method(i1, class1); //class1 implements Interface1 

在泛型中,接口實現和類擴展使用extends關鍵字來表示。泛型世界中沒有implements關鍵字。

+0

看起來不錯..只是擴展是類,我可以使用實現嗎? –

+0

在泛型中的擴展也是用於接口 – Jerome

2
public <T extends Interface> T myMethod(Interface I, Class<T> myClass)() {...} 

,如果你的方法返回牛逼