选择显示字体大小

eclipse 3.1中的java泛型支持


  java 5 提供泛型支持,泛型支持是开发人员多年以来所要求的特性。它代表了 java 编程语言一次具有重要意义的升级。像泛型这么复杂的技术,不仅对工具供应商也对开发人员带来了挑战。 本文着重介绍 eclipse 如何应对泛型挑战以及泛型给 java 语言带来的变化,展示了如何在 eclipse 中充分利用泛型,包括对于快速帮助、快速修复、重构和项目参数选择的支持。此外,还展示了完全泛型化语言的一些微妙而重要的方面。

  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 区域



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

eclipse will generate for java 5 code" border=1>
表 1. eclipsejava 5 代码产生的错误和警告
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 switchswitch 语句缺少枚举项意味着您可能遗漏一些枚举选项。
unhandled warning tokens in @suppresswarningsjava 5 允许您添加注释以抑制编译器警告。如果您拼写错了一个警告或者使用了一个并不存在的警告,这个标志将发出一个警告。
enable @suppresswarnings annotations打开程序地(用代码)抑制您不关心的警告的能力。

  一旦您根据喜好设定了所有的项目选项,就可以开始在 eclipse 中使用泛型了。


 


关键字 本文所属关键字

相关 与本文相关文章

分类 所有文章关键字导航

源码编程相关

Java   Asp   PHP   .Net   XML   C/C++   CGI   VB   Jsp   J2ee   J2se   J2me   EJB   Servlet   Tomcat   Resin   Struts   Weblogic   Eclipse   ANT   GUI   JMS   Web servise   IDEA   Webphere   Hibernate   Spring   Jboss   Applet   Swing   Socket   Javamail   Perl   Ajax   P2P   安全   模式   框架   测试   开源   游戏

SQL数据库相关

My-SQL   Ms-SQL   Access   DB2   Oracle   Sybase   SQLserver   索引   存储过程   加密   数据库   分页   视图  

手机无线相关

3G   Wap   CDMA   GRPS   GSM   IVR   彩信   短信   无线   增值业务

网页设计制作相关

HTML   CSS   网页配色   网页特效   Javascript   VBscript   Dreamweaver   Frontpage   JS   Web   网站设计

网站建设推广相关

建站经验   网站优化   网站排名   推广   Alexa

操作系统/服务器相关

Windows XP   Windows 2000   Windows 2003   Windows Me   Windows 9.x   Linux   UNIX   注册表   操作系统   服务器   应用服务器

图形图像多媒体相关

Photoshop   Fireworks   Flash   Coreldraw   Illustrator   Freehand   Photoimpact   多媒体   图形图像

标准 网站致力的规范

Valid CSS!

无不良内容,无不良广告,无恶意代码

Valid XHTML 1.0 Transitional

creativecommons