2008年8月13日 星期三

JAVA Generics(泛型)

對於多個不同的class
若基本的邏輯相同,可利用泛型,只定義一個class


public class GenericFoo <T> {
private T foo;
public void setFoo(T foo) {this.foo = foo; }
public T getFoo() {return foo;}
}

也能用public class ListGenericFoo <T extends List>
來限制T只能是number的子類別

然而<?>與<? extends number>則是用在變數或參數的宣告
限制這變數只能裝載這些限定的型別
*不過使用?宣告的reference不能用來加入新的資訊
只能取得它的資訊或是移除它的資訊

沒有留言: