Java技术,IBM风格: Java技术的新纪元 - 编程入门网
Java技术,IBM风格: Java技术的新纪元时间:2011-01-30 IBM Chris Bailey预计于今年秋天将最终发布的 Java 平台最新更新意义重大且倍受期待。虽然尚未通过 Java Community Process (JCP) 正式创建 Java 7 平台 Java Specification Request (JSR),并且最终特性集仍然未知,但 Oracle 推出的 Early Access 下载以及 Oracle 团队的公开声明为我们理解 Java SE 7 的内容提供了一些帮助。 预计特性分为以下四类: 非 Java 语言支持 “易于开发” 更新 模块化支持 可伸缩性更新 非 Java 语言支持和 JSR 292 Java 7 将提供一些增强,可允许动态类型语言的编译器实现程序更加轻松地为 Java 运行时生成实现,并允许这些实现以更高的性能运行。JSR 292 是变化的推动力。它引入了新的字节码和一系列新的 Java 类。 大多数情况下,Java 语言是强类型的,这需要指定在方法中传递或返回的参数类型。但是,在字节级,Java 则更加偏向于弱类型:操作数栈中的变量仅在属于相关原始类型或者一般为对象引用时才需要指定类型。在几乎所有情况中,字节级都使用弱类型。方法调用是一种例外情况,它会强制使用强类型 — 也就是说,调用方法时将使用它的完整签名,这包括参数和返回类型。在这种情况下,需要使用已知 Java 类型对 Java 方法进行调用。这会对动态语言造成问题,比如 Ruby、Python 和 Groovy,因为它们是动态类型(类型仅在运行时为可知)。 可以采用一些机制(通常基于反射或使用生成的调用程序)来避免这些问题并允许在 JVM 上运行动态语言,但它们会受到显著的性能影响。JSR 292 的引入旨在通过添加新 Java 字节码 invokedynamic 以调用动态方法,并结合 Java 语言关联机制来处理允许在运行时重写方法结构,来解决这些问题。 “易于开发” 特性 与 Java 平台之前的发行版相同,许多新语言特性将帮助简化常用结构所需的语法。 Project Coin Project Coin 涵盖众多小变化(coins),旨在降低编写简单任务的复杂度,并改善生成代码的可读性。 switch 语句中的 String 在 Java 7 之前的发行版中,您无法在 switch 语句中使用 String 或 Object。这意味着对 String 执行 switch 式语句的唯一方法是使用一系列 if-then-else 语句或者将 String 转换为原始类型或 enum 类型。String 在 switch 语句中的使用意味着以下简单结构现在已经合法:
改善泛型实例创建的类型推断 Java 5 引入了泛型,这使它能够对实例化过程中对一般集合类应用参数化类型,从而实现编译时安全检查。但是,在实现中,类型参数会有不必要的重复,例如:
改进后的类型设置更改允许推断第二个 <> 结构: Map<String, List<String>> anagrams = new HashMap<(); Java技术,IBM风格: Java技术的新纪元(2)时间:2011-01-30 IBM Chris Bailey简化的 varargs 方法调用 目前,在调用接受变量长度参数的方法时,调用代码会接收到一个编译时警告,提示正在执行不安全的操作。借助这一新特性,该警告将移至接受变量长度参数的方法声明中,从而在调用代码中减少不可避免的警告的数量。 语言对集合的支持 初始化数组的语法可允许指定使用以下语法的数组: int[] array = new int[] {0,1,2,3,4,5} 此语法现在适用于集合,例如:
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |