java中的泛型问题_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > java中的泛型问题

java中的泛型问题

 2014/11/25 22:07:24  ya1139569539  程序员俱乐部  我要评论(0)
  • 摘要:一般的类和方法,只能使用具体的类型,要么是基本类型,要么是自定义的类,如果要编写可以应用于多种类型的代码,这是泛型就起到了非常重要的作用。“泛型”的意思是:“适用于许多许多的类型”。它实现了参数化类型的概念,使代码可以应用于多种类型。泛型的出现其中最引人注目的原因就是创造容器类。容器就是用来存放要使用对象的地方。数组也是如此,不过与简单的数组相比,容器类更加的灵活,具备更多不同的功能。一元组类库元组的概念:它是将一元组对象直接打包存储于其中的一个单一的对象。这个容器对象允许读取其中的元素
  • 标签:Java 问题 泛型
   一般的类和方法,只能使用具体的类型,要么是基本类型,要么是自定义的类,如果要编写可以应用于多种类型的代码,这是泛型就起到了非常重要的作用。
    “泛型”的意思是:“适用于许多许多的类型”。它实现了参数化类型的概念,使代码可以应用于多种类型。泛型的出现其中最引人注目的原因就是创造容器类。容器就是用来存放要使用对象的地方。数组也是如此,不过与简单的数组相比,容器类更加的灵活,具备更多不同的功能。
    一元组类库
元组的概念: 它是将一元组对象直接打包存储于其中的一个单一的对象。这个容器对象允许读取其中的元素,但是不允许向其中存放新的对象
例一:
public class TwoTuple<A,B>{
  public final A first;
  public final Bsecond;
  public TwoTuple(A a,B b) { first = a; second = b;}
  public String toString() {
    return"("+first+","+secod+")";
  }
}
上面这个例子是一个二维元组,它能够持有两个对象。构造器捕获了要存储的对象,而toString()是一个便利函数,用来显示列表中的值。
泛型方法
泛型除了应用于整个类上。还可以在类中包含参数化方法,而这个方法所在的类可以是泛型类,也可以不是泛型类。也就是说,是否拥有泛型方法,与其所在的类是否是泛型没有关系。
    泛型方法使得该方法能够独立与类而产生变化。以下是一个基本的指导原则:无论何时,只要你能做到,你就应该尽量使用泛型方法。
    要定义泛型方法,只需将泛型参数列表置于返回值之前,就像下面这样:
public class GenericMethods {
  public <T> void f(T x) {
  System.out.println(x.getClass().getName());
}
public static void main(String[] args) {
  GenericMethods gm = new GenericMethods();
  gm.f("");
  gm.f(1);
  gm.f(1,0);
  gm.f(1.0F);
  gm.f('c');
  gm.f(gm);
   }
}
  GenericMethods并不是参数化的,尽管这个类和其内部的方法可以同时被参数化,但是在这个例子中,只有方法f()拥有类型参数。这是由该方法的返回类型前面的类型参数列表指明的。
发表评论
用户名: 匿名