当前位置:编程学习 > JAVA >>

什么是java泛型

什么是泛型呢?
我们首先写一个最简单的泛型类来说明:
[java]
public class Generics<T> { //T是type的简称,可以使用任何名称代替 
    private T o; //泛型成员变量 
    public Generics(T o){ 
        this.o=o; 
    } 
    public T getObject() { 
        return o; 
    } 
    public void setObject(T o) { 
        this.o = o; 
    } 
    public String getType() { 
        return o.getClass().getName(); 
    } 

这个泛型类包括自己的构造函数,以及get、set方法和一个getType方法。
我们可以这样使用这个类:
[java]  www.zzzyk.com
public class GenericsDemo{ 
    public static void main(String[] args){ 
         
        Generics<Integer> intObject=new Generics<Integer>(1); 
        System.out.println("the value of intObject is " + intObject.getObject()); 
        System.out.println("the type of intObject  is " + intObject.getType()); 
 
        Generics<String> stringObject=new Generics<String>("hi, generics!"); 
        System.out.println("the value of stringObjectis " + stringObject.getObject()); 
        System.out.println("the type of stringObjectis " + stringObject.getType()); 
    } 

我们可以使用这个泛型类的各种类类型的版本(如例子中的Integer, String, 以及所有Object类及其子类)。不过泛型并不支持基本数据类型。
很明显,使用java泛型,我们可以省掉强制类型转换。编译器会保留参数的类型信息,执行类型检查,执行类型转换操作。因此开发人员不需要自己确保类型转换的安全性,而把这个交给编译器去做。

补充:软件开发 , Java ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,