java学习——41、带有泛型参数的方法
本篇接上篇:java学习——40、泛型
类中的方法有两种:静态方法和实例方法。
带有泛型参数的方法语法格式如下:
【public】【static】 <类型参数列表>返回值类型 方法(【参数列表】)(throws 异常类列表)
调用此方法时需要对其参数化,具体见例。
例题如下:
本例中,有带泛型参数的静态方法,也有带泛型参数的实例方法,仅以此介绍带泛型参数的方法的用法,并无实际意义。
public class Person{
public static <T> void add(T a){//带泛型的静态方法
System.out.println(a.toString());
}
public static void main(String args[]){
int a=10;
Person.<Integer>add(a); //调用静态方法直接用类名,泛型要参数化
String c="zcj";
Person.<String>add(c); //调用静态方法直接用类名,泛型要参数化
Person p=new Person();
p.<Integer>he(5,6); //调用实例方法用对象来调用,泛型要参数化,此实例方法在下
p.<String>he("ac","hj");
p.<Double>he(5.66,5.14);
Person q=new Person("lay");
p.<Person>he(p,q);
}
//带泛型的实例方法
public <T>void he(T a,T b){
System.out.println("a="+a.toString()+"\tb="+b.toString());
}
private String name;
public Person(){
name="zcj";
}
public Person(String name){
this.name=name;
}
public String toString(){
return name;
}
}
其运行结果如下:
10
zcj
a=5b=6
a=ac b=hj
a=5.66b=5.14
a=zcj b=lay