如何在Java中为泛型类创建泛型构造函数?

我想创建一个KeyValue类,但以通用方式,这就是我写的内容:

public class KeyValue<T,E> 

{

private T key;

private E value;

/**

* @return the key

*/

public T getKey() {

return key;

}

/**

* @param key the key to set

*/

public void setKey(T key) {

this.key = key;

}

/**

* @return the value

*/

public E getValue() {

return value;

}

/**

* @param value the value to set

*/

public void setValue(E value) {

this.value = value;

}

public KeyValue <T, E>(T k , E v) // I get compile error here

{

setKey(k);

setValue(v);

}

}

错误显示:“令牌“>上的语法错误”,此令牌后应有标识符”

那我该如何在Java中创建一个通用构造函数呢?

回答:

您需要<T, E>从构造函数的签名中删除:它已经隐式存在。

public KeyValue(T k , E v) // No compile errors here :)

{

setKey(k);

setValue(v);

}

以上是 如何在Java中为泛型类创建泛型构造函数? 的全部内容, 来源链接: utcz.com/qa/416940.html

回到顶部