Java泛型与集合笔记

时间:2023-02-26 10:50:21

第一章

Java的泛型为了兼容性和防止代码爆炸,在编译成字节碼时会进行类型擦除,编译器自动添加代码做类型转换(用到List<Integer>的地方用Integer来做转换),自动做装箱拆箱,做foreach替换,在多个参数的情况下自动打包进一个数组里

泛型的T一个是定义,是个是使用。使用的时候会包含定义。尖括号里可以使用通配符,编译器的类型转换只对尖括号里起作用

第二章

子类型替换原则:任意可以使用父类型值的地方,用可以用子类的对象地址值替换

List<Integer>不是List<Number>的一个子类,二者也不想等,不可以直接赋值