2013年7月20日 星期六

泛型


  • BooleanFoo.java

public class BooleanFoo {
    private Boolean foo;
    public void setFoo(Boolean foo) {
        this.foo = foo;
    }
    public Boolean getFoo() {
        return foo;
    }
}

  • IntegerFoo.java

public class IntegerFoo {
    private Integer foo;
    public void setFoo(Integer foo) {
        this.foo = foo;
    }
    public Integer getFoo() {
        return foo;
    }
}

類別定義時邏輯完全一樣,只是當中宣告的成員型態不同,有點小聰明的程式設計人員會將第一個類的內容複製至另一個檔案中,然後用編輯器「取代」功能一次取 代所有的型態名稱(即將Boolean取代為Integer)。

OK!是有些小聰明,但還是不太聰明,如果類別中的邏輯要修改,您要修改兩個檔案,泛型(Generics)的需求就在此產生



  • 以ArrayList<E>为例:<>念着typeof

沒有留言:

張貼留言