2013-02-28 95 views
4

我需要幫助瞭解如何實現通用getter方法。下面的代碼我到目前爲止:通用getter方法

public class Pair<X extends Comparable<X>, Y extends Comparable<Y>> 
    implements Comparable<Pair<X, Y>>{ 

    private final X first; 
    private final Y second; 

    public GENERIC getX() { 
     return X; 
    } 

    public GENERIC getY() { 
     return Y; 
    } 

有人能向我解釋如何使用某種<A extends classA> A對象的返回類型的此類更換仿製藥?我已經看到了其他帶有泛型返回值的方法的例子,但是我沒有理解如何在這裏應用它。謝謝!

+0

請看鏈接http://stackoverflow.com/questions/3851355/a-more -generic回報。這可能是有用的 – 2013-02-28 23:40:25

回答

4

public GENERIC getX() { 
    return X; 
} 

更改爲

public X getX() { 
    return first; 
} 

extendstype constraint,首先遇到的類型名稱時需要。該類型的名稱是它的名稱

+0

oh * facepalm *,我應該回到第一和第二,我讓他們感到困惑,這是我的愚蠢。然後X和Y對於對象類型有意義...謝謝! – user2048643 2013-02-28 23:42:18

+0

發生在我們所有人身上。很高興它有幫助。 – 2013-03-01 00:04:41

1

您已經定義了XY是您的通用類型。您只需在您的方法簽名中指定它們即可。然後照常返回你的實例變量。您還需要什麼來初始化你Pair,如構造函數(儘管setter方法將工作太):

​​