What's new for Java 7

Link:http://www.eclipse.org/jdt/ui/r3_8/Java7news/whats-new-java-7.html

Java 7 comes with a set of small enhancements to the Java language (aka Project Coin), a new byte code to dynamically invoke methods and many additions to the libraries. The Eclipse compiler implements all the new features of Java 7 and all Eclipse JDT features like e.g. search and refactoring have been updated to support Java 7. Besides that, some new features got added:

Improved Type Inference for Generic Instance Creation (Diamond)
Content assist inserts diamond Where possible, content assist for constructor invocations now inserts a diamond instead of explicit type arguments.

Content assist after 'new HashMap'

Result:

Content assist inserted 'new HashMap<>()'

Detection of redundant type arguments The compiler can now detect redundant specification of type arguments, which you can remove via the Remove type arguments quick fix.

Redundant specification of type arguments

This option is disabled by default but can be enabled on the Java > Compiler > Errors/Warningspreference page:

Redundant type arguments warning

New Insert inferred type arguments quick assist You can insert inferred type arguments of a diamond via a quick assist.

Insert inferred type arguments

Hint: This also works as a quick fix in 1.5 and 1.6 code, where the diamond is a syntax error.

Multi-catch
New Surround with try/multi-catch quick fix The new action Source > Surround With > Try/multi-catch Block allows you to surround selected statements with a try/multi-catch block. This is also available as Surround with try/multi-catchquick fix in case there are multiple uncaught exceptions.

Surround with try/multi-catch

New Add exceptions to existing catch clause quick fix The new Add exceptions to existing catch clause quick fix allows you to add uncaught exceptions to an existing catch clause.

Add exceptions to existing catch clause

New Use separate catch blocks quick assist The new Use separate catch blocks quick assist allows you to replace a multi-catch clause with individual catch blocks, one for each exception in the multi-catch clause.

Use separate catch blocks

New Move exceptions to separate catch block quick assist The new Move exceptions to separate catch block quick assist allows you to pick out one or more selected exceptions from a multi-catch clause.

Move exceptions to separate catch block

New Combine catch blocks quick assist The new Combine catch blocks quick assist allows you to combine separate catch blocks into a single multi-catch block. The quick assist is offered only when bodies of all the catch blocks are same.

Combine catch blocks

New Remove exception quick fix The compiler gives an error if an exception in a multi-catch clause is already caught by an alternative exception. The new Remove exception quick fix allows you to remove this exception.

Remove exception

Mark Occurrences Mark Occurrences has been updated to understand the multi-catch syntax.

Mark Occurrences

Formatter There are new Line Wrapping options in the formatter for the multi-catch syntax.

These can be configured on Java > Code Style > Formatter preference page under Line Wrapping > Statements > 'multi-catch'.

try-with-resources statement
Detection of unhandled exceptions thrown by automatic close() The compiler detects unhandled exceptions thrown by automatic close() invocation on a resource.

Detection of unhandled exceptions thrown by automatic close()

Mark Occurrences Mark Occurrences has been updated to understand the try-with-resources syntax.

The closing '}' of a try-with-resources statement is marked as a method exit point if the implicitclose() invocation throws an exception. The corresponding resource variable is also highlighted.

Mark Occurrences

Formatter There are new Line Wrapping and White Space options in the formatter for the try-with-resources syntax.

These can be configured on Java > Code Style > Formatter preference page under Line Wrapping > Statements > 'try-with-resources' and White Space > Control Statements > 'try-with-resources'.

Simplified Varargs Method Invocation
New Add @SafeVarargs quick fix The new Add @SafeVarargs quick fix is offered for potential heap pollution warnings on method declarations.

Add @SafeVarargs

The quick fix is also offered from call sites.

Add @SafeVarargs to declaration

New Remove @SafeVarargs quick fix The new Remove @SafeVarargs quick fix is offered for incorrect usage of @SafeVarargs annotation.

Remove @SafeVarargs

Remove @SafeVarargs

Strings in switch
Convert 'switch' to 'if-else' quick assist The Convert 'switch' to 'if-else' quick assist has been updated for strings in switch.

Convert 'switch' to 'if-else' quick assist

Note that the quick assist avoids a NullPointerException in the resultant code.

Polymorphic Methods
Polymorphic method signature in Javadoc hover Javadoc hovers for references to polymorphic methods show the actually used method signature.

Polymorphic method signature in javadoc hover

Miscellaneous
Evaluation support for Java 7 The evaluation engine in JDT debug has been updated to support Java 7.

You can now use all of the new code structures from Java 7 in:

  • Display / Inspect actions
  • Display view
  • Assign variable value operations
  • Breakpoint conditions

For example, switch on string is supported in breakpoint conditions:

Breakpoint condition example using switch on string

Execution environment for Java 7 When configuring JREs and execution environments, you now have the ability to configure a Java 7 execution environment:

The execution environments preference page

Assign variable value support for Java 7 The feature for changing the value of a variable while debugging has been updated for Java 7 to support underscores in literals and binary literals:

An example of assigning a binary literal with underscores to an int

API Tools support for Java 7 The execution environment description for Java 7 is available from the corresponding update site. After installing it, one can detect invalid references to Java 7 system libraries:

The API Errors/Warnings preference page showing the new Java 7 EE description

 
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看rEADME.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看rEADME.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通;、 3本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看ReAdmE.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值