java 泛型

来源:互联网 发布:心理咨询有用吗 知乎 编辑:程序博客网 时间:2024/05/16 14:03

泛型方法

是否拥有泛型方法,与其所在的类是否泛型没有关系。要定义泛型方法,只需将泛型参数列表置于返回值前。如:
只有一个参数情况:
public class ExampleA {
public <T> void f(T x) {
System.out.println(x.getClass().getName());
}
多个泛型参数情况:
public class BaseDemo {


    public final <R,Q> R call(Q q, String serviceClazz, String method){
        R r = null;
        return r;
    }
}
规则与限制:
1、泛型的类型参数只能是类类型(包括自定义类),不能是简单类型。
2、同一种泛型可以对应多个版本(因为参数类型是不确定的),不同版本的泛型类实例是不兼容的。
3、泛型的类型参数可以有多个。
4、泛型的参数类型可以使用extends语句,例如<T extends superclass>。习惯上称为“有界类型”。
5、泛型的参数类型还可以是通配符类型。例如Class<?> classType = Class.forName("java.lang.String");

参考文档:http://baike.baidu.com/link?url=KwqkfP4qbGTocui1r5kWM5U3xjg4oI8BwKgi-Rb6VADWVccPRpPaHqUT8mL175_F9eZgyR5ZMSTzZp4QmqukIq

原创粉丝点击