0 0

帮忙看看这个有什么问题5

 

public static <T> void rint(T o){
		System.out.println(o);
	}
 

 

2012年11月05日 16:10

3个答案 按时间排序 按投票排序

0 0

这个没有问题,static方法的话,必须加上<T>,因为class没有static的,即使class里面加了<T>,static方法也参照不到,static方法只能参照static的项目。一般的用法如下:

class Test{
  public static <T> void rint(T o){   
        System.out.println(o);   
  }

  public static void main(String[] args){
        rint("hello world");
  }
}  


或者(非static方法,如果class已经加了<T>,那么在方法上不需要再加,加上也不错,只是没有必要)

class Test<T>{
  public void rint(T o){   
        System.out.println(o);   
  }
  
  public static void main(String[] args){
        Test<String> tt = new Test<String>();
        tt.rint("hello world");
  }
}  


或者(class没有<T>,那么方法里面必须加上<T>)

class Test{
  public <T> void rint(T o){   
        System.out.println(o);   
  }
  
  public static void main(String[] args){
        Test tt = new Test();
        tt.rint("hello world");
  }
}  

2012年11月06日 11:52
0 0

这个没有任何问题呀,童鞋。
这样会打出传入参数o对象的物理地址。

2012年11月06日 10:08
0 0

都没有返回值了,<T>干什么

2012年11月05日 22:24

相关推荐

Global site tag (gtag.js) - Google Analytics