黑马程序员技术交流社区

标题: 泛型方法 [打印本页]

作者: 心在左边跳    时间: 2015-7-7 23:15
标题: 泛型方法

泛型类定义的泛型,在整个类中有效,如果被方法使用,泛型类对象明确要操作的具体类型后,所有要操作的类型就固定了。

  1. public class Demo<T> {
  2.     public void show(T t){
  3.         System.out.println("show:"+t);
  4.     }
  5.     public static void main(String[] args) {
  6.         // TODO Auto-generated method stub
  7.         Demo<String> d =new Demo<String>();
  8.         d.show("a");
  9.     }
  10. }
复制代码

为了让不同方法操作不同类型,而类型不确定,可以讲泛型定义在方法上。

  1. public class Demo1 {
  2.     public <T> void  show(T t){
  3.         System.out.println("show:"+t);
  4.     }
  5.     public static void main(String[] args) {
  6.         // TODO Auto-generated method stub
  7.         Demo d =new Demo ();
  8.         d.show("a");
  9.         d.show(4);
  10.     }
复制代码
  1. 静态方法不可以访问类定义的泛型。如果静态方法操作的引用数据类型不确定,可以将泛型定义在方法上。
复制代码

  1. public class Demo<T> {
  2.     public void show(T t){
  3.         System.out.println("show:"+t);
  4.     }
  5.     public static<W> void method(W t) {
  6.         System.out.println(t);
  7.     }
  8.     public static void main(String[] args) {
  9.         // TODO Auto-generated method stub
  10.         Demo<String> d =new Demo<String>();
  11.         d.show("a");
  12.         d.method(4);
  13.     }
  14. }
复制代码









欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2