泛型不但可以在类上使用,也可以在方法的返回值上、参数上、数组上使用泛型:
/*
* 泛型:解决数据类型的安全性
*/
//泛型类
class DemoTest<T> {
private T t;
public T getT() {
return this.t;
}
public void setT(T t) {
this.t = t;
}
public DemoTest(T t)
{
this.setT(t);
}
public void toSting() {
System.out.println(this.t);
}
}
public class Demo6 {
public static void main(String[] args) {
DemoTest<Integer> d1 = new DemoTest<Integer>(55);
DemoTest<Integer> d2 = new DemoTest<Integer>(77);
//调用泛型方法 泛型参数为:DemoTest类
add(d1, d2);
//调用返回数组的泛型方法
Integer[] is = args1(2,5,8,9);
for (int i : is) {
System.out.print(i + "\t");
}
}
// 泛型方法 泛型参数 指定为DemoTest类
public static <T> void add(DemoTest<T> d1, DemoTest<T> d2) {
System.out.println(d1.getT() + " " + d2.getT());
}
// 泛型方法返回数组
public static <T> T[] args1(T... ts) {
return ts;
}
} |