Java—泛型测试题

  1. 为什么使用泛型 ?

   泛型是为了解决在数据在装入集合时的类型都被当做Object对待,从而失去本身特有的类型,从集合里读取时,还要强制转换,java是所谓的静态类型语言,意思是在运行前,或者叫编译期间,就能够确定一个对象的类型,
    这样做的好处是减少了运行时由于类型不对引发的错误。但是强制类型转换是钻了一个空子,在编译期间不会有问题,而在运行期间,就有可能由于错误的强制类型转换,导致错误,这个编译器无法检查到。
    有了泛型,就可以用不着强制类型转换,在编译期间,编译器就能对类型进行检查,杜绝了运行时由于强制类型转换导致的错误。

2. Java 虚拟机支持泛型么 ? 什么是泛型擦除 ?

   JDK1.5
   擦除是将泛型类型以其父类代替,如String 变成了Object等。其实在使用的时候还是进行带强制类型的转化,只不过这是比较安全的转换,因为在编译阶段已经确保了数据的一致性。          

3. 怎么使用泛型 ?

   在集合声明和实现的后面加上<>,在里面写上指定的类型,这个集合就只能存放指定的元素类型了。

4. K , V 代表什么意思 ?

   k代表Map的key

   v代表Map的value

5. 自定义类或者接口怎么使用泛型 ?

   创建泛型接口,在接口名后定义通配符T

   接口中定义泛型方法,参数不再是明确的类型,而是通用符T

   类实现接口时将通配符替换为明确的类型

   


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容