在Java中实现泛型机制的目标是为了可以把发现 bug 的时机提前到编程源码时,而不是运行时。如果在编译时就可以发现 bug ,就可以节省大量的调试Java程序的时间,因为编译错误可以比较容易和比较快速地被发现和修复。而且,泛型仅仅只存在于编译时,这个事实也是我们学习Java泛型的过程中必须记住的最重要的一个事实。 泛型作用有: 例如:
这里<T>的T的类型的参数,具体T指代什么类型,是String还是Animal还是Dog类型此处不管,而在程序员开发时使用到ListContainer时再指定, 如:
这种环境下,编译器就知道ListContainer容器是放Dog类型对象的。并进行类型安全检查。
这样设计的容器在使用时编译器就可以帮忙做很大一部分的类型安全检查工作了,这就避免了很多运行时的ClassCastException异常,程序员也无需记住各种对象的类型和担心类型匹配问题了。同时大部分情况下也不用做类型强制转换工作了。 (责任编辑:admin) |