跳到主要内容

泛型设计

使用场景

概念

  • 容器结构: stack、set、queue 等持有任意元素类型的数据结构;
  • 算法复用: 对多种数值类型执行相同逻辑;
  • 类型安全: 避免使用 any 后再做类型断言;

不适用场景

概念

  • 单一类型逻辑: 直接写普通函数更清晰;
  • 约束复杂: 需要大量类型分支时泛型收益较低;
  • 业务抽象: 优先使用具体类型和接口表达行为;

接口与泛型

对比

机制关注点
interface值能做什么行为
generic代码能适配哪些类型