引子 相信总是有很多同学,总是在抱怨泛型无论怎么学习,都只是停留在一个简单使用的水平,所以一直为此而备受苦恼. Kotlin 作为一门能和 Java 相互调用的语言,自然也支持泛型,不过 Kotlin 的新关键字 in 和 out 却总能绕晕一部分人,归根结底,还是因为 Java 的泛型基本功没有足够扎实. 很多同学总是会产生这些疑问: Kotlin 泛型和 Java 泛型到底有何区别? Java 泛型存在的意义到底是什么? Java 的类型擦除到底是指什么? Java 泛型的上界.下界.通配符…