泛型

简介:

什么是 Java 泛型
● 泛型的主要目的是实现类型参数化,java 在定义类、定义接口、定义方法时都支持泛型
● 泛型的好处有
○ 提供编译时类型检查,避免运行时类型转换错误,提高代码健壮性
○ 设计更通用的类型,提高代码通用性
【例如】想设计 List 集合,里面只放一种类型的元素,如果不用泛型,怎么办呢?你必须写很多实现类
● Impl1 实现类中,只放 String
● Impl2 实现类中,只放 Integer
● ...
● 要支持新的元素类型,实现类型也得不断增加,解决方法需要把元素类型作为参数,允许它可变化:List,其中 T 就是泛型参数,它将来即可以是 String,也可以是 Integer ...
P.S.
● 【例如】是为了帮助你理解,不是必须答出来。
● 关键是答出类型参数化,懂的面试官不必多说,不懂的也没必要跟他继续啰嗦

相关文章
|
4月前
|
数据采集 领域建模 数据库
|
4月前
|
存储 消息中间件 开发框架
应用架构图
在上一节有了业务架构的基础之上,当我们需要落地具体的技术方案时,此时就需要技术人员开始考虑技术架构了。技术架构是应接应用架构的技术需求,并根据识别的技术需求,进行技术选项,把各个关键技术和技术之间的关系描述清楚。 基础结构解决的主要问题包括:如何进行技术层面的分层、开发框架的选择、开发语言的选择、涉及非功能性需求的技术选择。由于应用架构体系是分层的,那么对应的技术架构体系自然也是分层的。大的分层有微服务架构分层模型,小的则是单个应用的技术分层框架。大的技术体系考虑清楚后,剩下问题就是根据实际业务考虑选择具体的技术点。各个技术点的分析、方案选择,最终形成关键技术清单,关键技术清单应考虑架构本身的
|
4月前
|
SQL 运维 分布式计算
如何做好SQL质量监控
Cloud Native 在 SLS 中,用户可以通过 SQL 对日志数据(结构化、半结构化、无结构化)进行查询和分析。随着用户对 SQL 使用程度的不断加深,越来越多的用户希望了解自己使用 SQL 分析时的服务反馈(如请求量、成功率、数据量等等),以便对数据和分析行为进行精细管理或优化治理。 “现在我这个 Project 的 SQL 并发是多少?” “奇怪,我 SQL 请求并不多,为什么会有这么多 SQL 请求,是哪个业务线(Logstore)用的?” “我想了解我在 SLS 中使用 SQL 分析的整体情况,请问有什么监控数据或日志可以查看? 这些都是来自 SLS 真实用户的声音,可以看出用
|
4月前
|
Java 测试技术 Linux
生产环境发布管理
在一个大型团队中,生产发布是一件复杂的事情,从dev(前后端联调)-->test(测试集成&压力测试)-->pre(灰度测试)-->prod(生产环境)的多环境推进,以及生产环境的热更新、回滚等问题一直在困扰着各个公司,今天我将基于公司的自动化部署平台为大家讲解下我们是如何做到多环境部署。
|
4月前
|
SQL 运维 分布式计算
|
4月前
|
运维 Devops 开发工具
生产环境缺陷管理
在一个大型团队中,bug协同管理是一件复杂的事情,发布经理要追版本bug,运维同学要评估bug影响范围,开发同学要在多个开发分支同时修复同一个bug,很容易出现bug漏提交、漏确认等生产安全问题。 本团队也出现过一起不同分支漏提交bugfix导致的一起P1故障(最高等级),该bug在生产环境进行hotfix时,漏掉了少量集群导致该二次故障。举个相似的例子,某品牌汽车发现潜在安全隐患进行召回,但却遗漏了某个小地区,偏偏在遗漏的地区,发生了安全事故导致有人员伤亡。 我们基于go-git开发实现了通用化的git-poison,通过分布式源码管理bug追溯、查询,可复制性高,适用于所有git仓库,与分