快速业务通道

Eclipse V3.1中的Java泛型支持 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-07-04

Eclipse V3.1中的Java泛型支持

时间:2010-12-02 IBM Neal Ford

Java 中的泛型

几乎从第一个版本开始,Java 技术的创立者们就已经开始讨论对该语言添加 泛型支持。C++ 通过标准模板库对泛型进行支持,但是由于缺少所有其他类(嵌 入在 Java 语言中的Object 类中)的一个统一父类,泛型的实现也受到阻碍。Java编程语言的泛型支持是其历史上最重大的语法变化。由于某些显而易见的原因,工具支持比其他 SDK 升级的步法要慢得多。尽管如此,现在 Eclipse V3.1 已经对这些语言的新特性有了出色的支持。本文重点介绍其中的一些新特 性。

Java 5 项目

为了打开 Eclipse V3.1 中的Java 泛型支持,需要在 机器上安装 Java 5,从一些平常的地方都可以下载到 Java 5。泛型支持连同项 目属性一起出现在编译器设置页面。这意味着像以前一样,每个项目具有独立的SDK 设置。为了创建使用泛型的项目,必须在创建项目时指定语言级别或者通过 现有项目的项目属性指定语言级别。

Java 5 设置使用两个特定的属性页 。第一个属性页指定编译器设置。

图 1. 针对 Java 5 支持的特定于编 译器的设置

除非您已经在 Eclipse for Java 5 中设置了默认项目设置,否则需要为该 项目覆盖那些设置。JDK compliance 区域允许您决定源文件和类文件的设置。当您把源文件设置为 5.0 级别时,就会获得很多新的内容帮助和重构选项。

另一个相关属性对话框是树型视图中的Errors/Warnings 区域。

图 2. 项目属性的Errors/Warnings 区域

Eclipse V3.1中的Java泛型支持(2)

时间:2010-12-02 IBM Neal Ford

大量 J2SE 5 选项能够控制 Eclipse 为您的Java 5 代码产生什么类型的错 误和警告(请参见表 1)

J2SE 5 选项 警告类型
Unchecked generic type operation 编译器每当遇到未经检查的泛型类型操作, 就将发出一个错误或者警告。这种操作包括诸如 List 或 ArrayList 等类型上 的操作,但没有指定类型。每当您使用一个保存有对象的旧式 Collection 类时 就会产生一个警告。
Generic type parameter declared with a final type bound 编译器每当遇到一个涉及 final 类型的类 型绑定时,就会发出一个错误或者警告。请看这个示例方法签名:

public int doIt(List<? extends String> list)

因为 String 是 final 类型,参数不能扩展 String,所以这样写比较有效:

public int doIt(List<String> list)

Inexact type match for vararg arguments 当编 译器不能从 varargs 参数确定开发人员的意图时,它将生成一个警告。有一些 与数组相关的varargs 是不明确的。
Boxing and unboxing conversions 对自动装箱操作发出警告(装箱操作可能影响性能),并 且不再对类型包装对象做对象身份的假设。这是一个默认状态下被忽略的小警告 。
Missing @Override annotation 应该为任何重 写的方法包含 @Override 注释。缺少这个注释可能表示开发人员没有意识到该 方法被重写。
Missing @Deprecated annotation 由于缺少 @Deprecated 标志而产生的警告。
Annotation is used as super interface 您不能把 Deprecated 类作为超级接口。例 如,不推荐这种写法:

public interface BadForm extends Deprecated { }

Not all enum constants covered on switch switch 语句缺少枚举项意味着您可能遗漏一些枚举选项。
Unhandled warning tokens in @SuppressWarnings Java 5 允许您添加注释以抑制编译器警告。如果 您拼写错了一个警告或者使用了一个并不存在的警告,这个标志将发出一个警告 。
Enable @SuppressWarnings annotations 打开 程序地(用代码)抑制您不关心的警告的能力。

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号