java基础笔记

管理员

一、泛型受限

1、类型通配符上限:类/接口<?extends 实参类型>

要求该泛型的类型只能是实参类型,或者实参类型的子类类型

2、类型通配符下限:类/接口<?extends 实参类型>

要求该泛型的类型只能是实参类型,或者实参类型的父类类型

二、泛型擦除

三、泛型数组

public class TestCollection {
    @Test
    public void testCollectFor(){
        Fruit<String> fruits=new Fruit<>(String.class,5);
        fruits.put(0,"苹果");
        fruits.put(1,"西瓜");
        System.out.println(Arrays.toString(fruits.getArry()));
    }

    class  Fruit<T>{
        T[] arry;
        Fruit(Class<T> clz,int lenth){
            //泛型数组的创建
            arry= (T[])Array.newInstance(clz,lenth);
        }
        public void put(int index,T item){
            arry[index]=item;
        }
        public T[] getArry(){
            return arry;
        }
    }
}