转载于: https://blog.csdn.net/u012760183/article/details/52092692
之前参加面试的时候遇到面试官问泛型的作用, 只是说了大概自己的理解,
在此转载记录一下, 加深印象
泛型好处:
泛型简单易用
类型安全 泛型的主要目标是实现 java 的类型安全. 泛型可以使编译器知道一个对象的限定类型是什么, 这样编译器就可以在一个高的程度上验证这个类型
消除了强制类型转换 使得代码可读性好, 减少了很多出错的机会
Java 语言引入泛型的好处是安全简单. 泛型的好处是在编译的时候检查类型安全, 并且所有的强制转换都是自动和隐式的, 提高代码的重用率.
泛型的实现原理
泛型的实现是靠类型擦除技术 类型擦除是在编译期完成的 也就是在编译期 编译器会将泛型的类型参数都擦除成它的限定类型, 如果没有则擦除为 object 类型之后在获取的时候再强制类型转换为对应的类型. 在运行期间并没有泛型的任何信息, 因此也没有优化.
泛型不考虑继承
List 类型 是否 可以 赋值为 List 类型 ?
答案是不可以的
虽然说在赋值之后 String 类型可以当做 Object 类型使用 但是还是会出现问题
假设如下代码
来源: http://www.bubuko.com/infodetail-2590217.html