探索Eclipse V3.1的新特性 - 编程入门网
g,而悬 停在第二个使用时,会提示实例方法返回了一个 Integer (请参阅图 3)。
图 3. 跟踪一个通用方法调用,查看它返回的类型 现在您知道了为什么要把泛型添加到 Java 中,以及泛型的工作方式。下面 将介绍 Eclipse V3.1 是如何支持和增强泛型的。 探索Eclipse V3.1的新特性(6)时间:2010-12-02 IBM Martin Streicher用泛型捕获错误 因为泛型的目的是帮助避免向下转型错误,所以 Eclipse 会标记出可通过泛 型的使用获益的操作。 例如,请在 Eclipse 中用 5.0 编译器设置创建下面这个简短的 Java 应用 程序:
代码输入之后,两个小图标 —— 一个蓝色灯泡和一个警告标记 —— 会出 现在 a.add(...) 的起始行上,如图 4 所示。如果将鼠标悬停在这个图标上, 会出现一条消息,提示您 ArrayList 应当参数化。 图 4. Eclipse 指出更适于使用泛型的时机 类型安全更强的代码是 ArrayList>Integer< a = new ArrayList>Integer<()。 Eclipse 还提供了重构技术,可以促进泛型的使用。请看清单 4. 清单 4. 将代码重构为使用泛型
输入以上代码后,Eclipse 将使用蓝色灯泡和黄色波浪线标记许多行,表示 可以做改进。要将其重构为使用泛型,请选择 Refactor > Infer Generic Type Arguments。出现下一对话框时,把两个选项都选中,然后单击 Preview 按钮。Eclipse 会展示要做的变化,如图 5 所示。 图 5. 在 Eclipse 中预览重构为使用泛型的情况 Eclipse 重构器不仅对 List 和 ArrayList 进行参数化,而且删除了 for 循环中的类型转换。单击 OK 接受修改。代码转换为:
最后,在任何 Eclipse 处理非泛型类型的地方,都能处理泛型类型。例如, 可以安全地把泛型类型改名。 探索Eclipse V3.1的新特性(7)时间:2010-12-02 IBM Martin Streicher新循环 随着泛型的加入,Java V5 现在支持 foreach 的一种快捷方式,对列表中的 元素进行迭代。输出 List l 成员的旧式 for 循环可改写为一种更干净的格式 :
就像对许多旧 Java 语言特性一样,Eclipse V3.1 包含了一个针对 J2SE V1.5 的新 foreach 构造的模板。Eclipse 不仅会生成 foreach 代码,还会猜 测(根据上下文和位置)要对哪个集合进行迭代。 例如,在最后一个 l.add() 后输入 fore,然后按下 Ctrl+Space。Eclipse 会把 foreach 模板作为 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |