在Java SE 1.5之前,没有泛型的情况的下,通过对类型Object的引用来实现参数的“任意化”,“任意化”带来的缺点是要做显式的强制类型转换,而这种转换是要求开发者对实际参数类型可以预知的情况下进行的。对于强制类型转换错误的情况,编译器可能不提示错误,在运行的时候才出现异常,这是一个安全隐患。
泛型的好处是在编译的时候检查类型安全,并且所有的强制转换都是自动和隐式的,提高代码的重用率。
1、Object是所有类的积累,范围更广,泛型T在使用的的时候就会具体到某一种类型
2、Object定义的类型在使用过程中需要强转,这就需要我们预先知道是什么类型,编译器不会检查Object类型的强转错误,只有在运行时才会抛出;泛型T的类型在编译期间就会进行检测,它的类型转换是自动的,隐式进行的
本文探讨了Java中泛型与Object类型的主要区别。在JavaSE1.5之前,通过Object实现参数“任意化”,但存在类型转换错误隐患。引入泛型后,可在编译期检查类型安全并自动进行类型转换。
580

被折叠的 条评论
为什么被折叠?



