Advertisement

Effective Java 泛型:主要关注安全性(异构容器)

阅读量:

泛型最常用在集合类数据结构中 比如Set、Map以及其他简单的容器。
它们通常被当作可参数化的数据结构。
这样就使得每个数据结构只能接受预先定义好的元素或键值对。
通常情况下这正是我们期望的功能。
例如Set仅接受一种类型的元素;而Map则同时接受两种类型的键与值;诸如此类。
然而,在某些情况下你需要更高的灵活性。
例如数据库行可以有任意多的列 如果能以类型安全的方式访问所有列就好了。
幸运的是有一种方法可以帮助我们实现这一点 这种方法的核心思想是将键(key)进行参数化 而不是直接对存储容器(container)进行参数化 处理后再将其传递给相应的数据结构来进行插入或检索操作 最终通过泛型系统来确保存储的数据与其对应的键之间始终保持着正确的类型关联。

考虑到Favorites类(Favorites class),该工具能够支持客户端从任意数量的不同类中保存并获取他们最喜爱的具体实例(specific instance)。其中Class对象扮演着关键的角色(plays a crucial role in this process)。这是因为Java 1.5版本中的Class实现了泛型机制(实现了 generic mechanism)。在这种情况下,在编译时间和运行时间传递类型信息的方式上有所不同(differ in how type information is passed d

全部评论 (0)

还没有任何评论哟~