使用泛型在类中执行相同的泛型类型

Mah*_*ran 0 java generics

以下示例取自GenericsFAQ:

class Pair<X,Y>  { 
    private X first;
    private Y second;

    public Pair(X a1, Y a2) {
      first  = a1;
      second = a2;
    }
    public X getFirst()  { return first; }
    public Y getSecond() { return second; }
    public void setFirst(X arg)  { first = arg; }
    public void setSecond(Y arg) { second = arg; }
}
Run Code Online (Sandbox Code Playgroud)

问题:我想强制执行X并且Y应该属于同一类型.示例Pair<Integer,Integer>是正确的,但Pair<Integer, String>不应被接受.是否有可能通过泛型来实现这一目标?

joh*_*902 11

使用

class Pair<X> {
Run Code Online (Sandbox Code Playgroud)

和所有的改变YX.