Java高级---泛型

泛型:泛指的类型,使用前类型不能确定


所用到的方面--------------------------------------------------------------


一.泛型类{规定这个类内部属性的数据类型}
public class Point<T>{
private T x;
private T y;
//添加构造、get/set方法、toString()
}
public class Point<K,V>{
private K x;
private V y;
}


二.通配符
三.受限的通配符
/*写在泛型类中*/
//通配符:接收的Info<?> temp对象,不知外部指定的是什么类型,用?通配  
public static void fun(Info<?> temp) {
System.out.println(temp);
}
//受限的通配符,只能接收Number及其子类,输出数字
public static void fun1(Info<? extends Number> temp) {
System.out.println(temp);
}
//受限的通配符,只能接收String 和Object,输出String
public static void fun2(Info<? super String> temp) {
System.out.println(temp);
}


四.泛型接口{规定这个接口,内部抽象方法的返回值类型}



五.泛型方法
/*可写在普通类中,但返回类型T前,需加<T>*/
public <T>T fun(T t){//参数可以接收  任意类型,返回T类型的值}


六.泛型数组
public static <T> max(T[] a){}  //接受任意类型的数组,返回最大值











你可能感兴趣的:(泛型,类型,java高级)