# 课程：泛型（更新）

> 原文： [https://docs.oracle.com/javase/tutorial/java/generics/index.html](https://docs.oracle.com/javase/tutorial/java/generics/index.html)

在任何重要的软件项目中，错误只是生活中的一个事实。仔细的规划，编程和测试可以帮助减少它们的普遍性，但不知何故，在某个地方，它们总会找到一种方法来进入你的代码。随着新功能的引入以及您的代码库在规模和复杂性方面的增长，这一点变得尤为明显。

幸运的是，一些错误比其他错误更容易被发现。例如，编译时错误可以在早期检测到;您可以使用编译器的错误消息来确定问题所在并立即修复它。但是，运行时错误可能会更成问题;它们并不总是立即浮出水面，当它们发生时，它可能在程序中的一个点远离问题的实际原因。

泛型通过在编译时检测到更多错误来增加代码的稳定性。完成本课程后，您可能需要跟进 Gilad Bracha 的 [Generics](../../extra/generics/index.html) 教程。