跳转至

什么是泛型?有什么好处?

面试回答

面试官: 什么是泛型?有什么好处?

你:

泛型就是把类型当作参数,让一段代码能处理多种不同类型的数据。好比一个模具,你传进去“String”它就做装字符串的盒子,传进去“Integer”它就做装整数的盒子,一套代码复用多种场景。

带来的好处就三个字:早、少、净。

  • 早:类型检查提前到编译期。原来用集合不指定类型,什么都往里丢,取出来再强转,运行时才报 ClassCastException;有了泛型,编译器直接给你拦住,不会把隐患留到线上。

  • 少:省去手动强转代码。List<String> 取出来就是 String,不用自己写 (String) list.get(0),代码简洁,出错概率低。

  • 净:代码更干净、意图更清晰。一个方法 List<User> getVIPs() 一看就知道返回的是用户列表,可读性比裸的 List 强太多。

背后的思想是“用类型约束代替人工约定”:以前你写注释说“这个List只能放String”,泛型直接把这条规则写进类型系统,让编译器帮你执行。这也是 Java 引入泛型的最大动机——把隐式约定变成显式强约束。

deepseek_mermaid_20260612_2a3f7d.png