class Ge<T> {}public class T3Generic {
public static void main (String[] args){
new Ge();
                new Ge<Integer>();
}
}问下,创建一个泛型类的对象,可以不给出泛型参数么?

解决方案 »

  1.   

    可以不指定内部的数据类型,在编译的时候会出现不安全操作的警告信息,但是不影响程序的执行,这是因为,如果你不指定泛型的类型,系统会默认为用Object类来接受。还是加上比较好呢
      

  2.   

    public class Gen<T> { 
     private T ob; //定义泛型成员变量  public Gen(T ob) { 
      this.ob = ob; 
     }  public T getOb() { 
      return ob; 
     }  public void setOb(T ob) { 
      this.ob = ob; 
     }  public void showTyep() { 
      System.out.println("T的实际类型是: " + ob.getClass().getName()); 
     } 
    } public class GenDemo { 
     public static void main(String[] args){ 
     //定义泛型类Gen的一个Integer版本 
     Gen<Integer> intOb=new Gen<Integer>(88); 
     intOb.showTyep(); 
     int i= intOb.getOb(); 
     System.out.println("value= " + i);  System.out.println("----------------------------------");  //定义泛型类Gen的一个String版本 
     Gen<String> strOb=new Gen<String>("Hello Gen!"); 
     strOb.showTyep(); 
     String s=strOb.getOb(); 
     System.out.println("value= " + s);