首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

Java泛型的一个有关问题

2012-03-28 
Java泛型的一个问题Java codeclass GeT {}public class T3Generic {public static void main (String[]

Java泛型的一个问题

Java code
class Ge<T> {}public class T3Generic {    public static void main (String[] args){        new Ge();                new Ge<Integer>();    }}


问下,创建一个泛型类的对象,可以不给出泛型参数么?

[解决办法]
可以不指定内部的数据类型,在编译的时候会出现不安全操作的警告信息,但是不影响程序的执行,这是因为,如果你不指定泛型的类型,系统会默认为用Object类来接受。还是加上比较好呢
[解决办法]
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); 


热点排行