0java之泛型解说
2024-08-29 15:50:01
1、集合中只能装入引用数据类型,不能装入基本数据类型。如,装入int类型的数值123会自动装箱。
2、开发人员装入集合的数据类型不确定,所以它被设计成可以装入所有的Object。
3、新的问题产生,装入集合的数据丢失原来的数据类型,都变为Object。这样取出来的时候就需要类型转换。并且类型转换如果出错,是运行时错误,装入一只狗,出来转成一只猫。我们尽量把错误提前,提前到编译期。
4、集合上加泛型,每次装入集合元素时,编译器会检查,是否和原来的规定一样。取出元素的时候就不需要转型了。
5、List<Object>不是List<Person>的父类,它们之间没有继承关系。如果可以继承,就会出现一个问题,我们就可以在List<Number>集合里添加Integer、Double、Byte等不同数据类型的元素。而泛型就是为了约束添加到里面的元素类型,这样就矛盾了。
最新文章
- linux 守护程序小记(指定进程不存在则启动 )
- for变量作用域(vc6与vs)
- C# MD5加密
- Python基础之【第二篇】
- Linux探秘之用户态与内核态
- Effective Java 23 Don&#39;t use raw types in new code
- 网络编程中获取域名和id的方法
- 【转】编译Android系统源码和内核源码
- chrome启用本地文件
- .Net 笔记(二) 泛型和集合
- C语言中两个相等的char值比较 结果为false
- mutex和CRITICAL_SECTION,互斥和临界区
- org.hibernate.LazyInitializationException could not initialize proxy-no Session的解决
- android最新更新方法
- SpriteBuilder中使用TrueType字体的一些障碍
- Python爬虫爬取豆瓣读书
- Chapter 4 Invitations——23
- imu_tk标定算法
- 解决SpringBoot jar包太大的问题
- mysql利用navicat导出表结构和表中数据
热门文章
- cat /proc/sys/net/ipv4/ip_forward 0 解决办法
- puppet的使用:puppet配置文件介绍
- 【jQuery源码】DOM Ready
- traefik+etcd构建grpc微服务demo
- facebook 摘要生成阅读笔记(一) A Neural Attention Model for Sentence Summarization
- 高级网络功能(Docker支持的网络定制配置)
- Hive和SparkSQL: 基于 Hadoop 的数据仓库工具
- java.lang.NoSuchMethodError: org.json.JSONArray.iterator()Ljava/util/Iterator 阿里云短信
- H5开发过程中修复的bug记录
- Border属性的各种变化