2017年8月12日 星期六

Chapter 15: 泛型(Generic)

簡單的泛型
  • 有些情況你會希望Container可持有多種物件型別,但實際使用上你一次只會放一種型別到此容器。
  • 可以將型別參數(T)放進class名稱後的角括弧中,在實際使用此class時將T取代為真正的型別資訊。
    public class Holder3<T> {
         private T a;
         public Holder3(T a) { this.a = a; }
         public void set(T a) { this.a = a; }
         public T get() { return a; }
         public static void main(String[] args) {
             Holder3<Automobile> h3 =
                 new Holder3<Automobile>(new Automobile());
             Automobile a = h3.get(); // No cast needed
             // h3.set("Not an Automobile"); // Error
             // h3.set(1); // Error
         }
    }

沒有留言:

張貼留言