使用了泛型类和没使用泛型类的小例子对比

使用了泛型类:

 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 }

 

posted @ 2013-01-02 17:29  MidSummer411  阅读(124)  评论(0)    收藏  举报