我们在 泛型类 里面是将整个类都泛型了,我们了解了在泛型类里面定义泛型的方法。我们在普通的类里面,也可以定义一个泛型方法。泛型方法的定义与类是不是泛型类没有关系。
[访问权限]<泛型标识> 泛型标识 方法名称(泛型标识 参数名称){
//do something
}
和泛型类里面方法不一样的是,在普通类里面定义泛型方法的时候需要在访问权限后面声明泛型标识,然后泛型标识可以在返回值中使用也可以在参数里面使用。
定义一个普通类,并且声明泛型方法
package com.haicoder.net.paradigm.method;
public class MethodClass {
public<T> T getInfo(T t){
System.out.println("调用了抽象方法");
return t;
}
}
定义测试类
package com.haicoder.net.paradigm.method;
public class TestMain {
public static void main(String[] args) {
System.out.println("嗨客网(www.haicoder.net)");
MethodClass methodClass = new MethodClass();
String retValue = methodClass.getInfo("嗨客网");
System.out.println("传递的参数是String类型 : " + retValue);
Integer intValue = methodClass.getInfo(12);
System.out.println("传递的参数是Integer类型 : " + intValue);
System.out.println("结束");
}
}
运行结果如下:
和声明泛型类相似,我们在调用方法的时候,将泛型的参数赋什么值就是什么类型,它可以表示参数也可以表示返回值。
泛型方法与泛型类相似,在声明方法的时候使用泛型声明。可以在泛型类里面定义泛型方法,也可以在普通类里面定义泛型方法。