分享
 
 
 

Eclipse 3.1中的Java泛型支持

王朝java/jsp·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

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)

表 1. Eclipse 为 Java 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 switch

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有