java泛型應該注意的問題。

suyu_yuan發表於2016-07-01

相關程式碼如下:

package test;


class Point<T,E>{
private T x;
private T y;
private E z;

public T getX() {
return x;
}
public void setX(T x) {
this.x = x;
}
public T getY() {
return y;
}
public void setY(T y) {
this.y = y;
}
public E getZ() {
return z;
}
public void setZ(E z) {
this.z = z;
}


}
 
/** 
* @author : suyuyuan
* @date :2016年6月16日 下午5:29:13 
* @version 1.0 
*/
public class Test {
public static void main(String[] args) {
Point<String,String> p = new Point<String,String>();
p.setX("xx");
p.setY("yy");
p.setZ("zz");
System.out.println(p.getX() + p.getY() + p.getZ());
}


}


注意:

如果把Point<T,E>換成Point<T,E,A>

則會包如下錯誤:

Incorrect number of arguments for type Point<T,E,A>; it cannot be parameterized with arguments <String, String>



相關文章