使用了泛型类和没使用泛型类的小例子对比
使用了泛型类:
1 class Gen<T> 2 { 3 private T ob; //定义泛型成员变量 4 public Gen(T ob) 5 { 6 this.ob = ob; 7 } 8 public T getOb() 9 { 10 return ob; 11 } 12 public void setOb(T ob) 13 { 14 this.ob = ob; 15 } 16 public void showType() 17 { 18 System.out.println("T的实际类型是:" + ob.getClass().getName()); 19 } 20 } 21 22 public class JustTest 23 { 24 public static void main(String[] args) 25 { 26 Gen<Integer> intOb = new Gen<Integer>(88); 27 intOb.showType(); 28 int i = intOb.getOb(); 29 System.out.println("value = " + 1); 30 System.out.println("----------------"); 31 Gen<String> strOb = new Gen<String>("Hello JustTest"); 32 strOb.showType(); 33 String s = strOb.getOb(); 34 System.out.println("value = " + s); 35 } 36 }
没有使用泛型类:
1 class Gen2 2 { 3 private Object ob; //定义一个通用类型行为 4 public Gen2(Object ob) 5 { 6 this.ob = ob; 7 } 8 public Object getOb() 9 { 10 return ob; 11 } 12 public void setOb(Object ob) 13 { 14 this.ob = ob; 15 } 16 public void showType() 17 { 18 System.out.println("T的实际类型是:" + ob.getClass().getName()); 19 } 20 21 } 22 public class SecTest 23 { 24 public static void main(String[] args) 25 { 26 Gen2 intOb = new Gen2(new Integer(88)); 27 intOb.showType(); 28 int i = (Integer)intOb.getOb(); 29 System.out.println("value = " + i); 30 System.out.println("--------------"); 31 Gen2 strOb = new Gen2("Hello World"); 32 strOb.showType(); 33 String s = (String) strOb.getOb(); 34 System.out.println("Vale = " + s ); 35 } 36 37 }

浙公网安备 33010602011771号