【51CTO快译】虽然关于Java 7闭包一直波澜不断,开发者们也对Java是否真的需要引入闭包存在争议,但Oracle还是在两天前放出了Java 7闭包的第一个版本。我们可以在测试项目中看到Java编译器语法规则的演变。点此查看测试项目。
Oracle发布的最新版本有以下功能更新:
◆函数类型语法
◆函数类型的子类型
◆全面支持Lambda表达式
◆在lambda中对thrown/return类型的引用
在Oracle的更新说明中显示,这里所提到的函数类型在默认情况下不会启动,必须使用XDallowFunctionTypes来启用。以下为示例:
type1,lambda表达式:
1 int i1 = #()(3).(); //i1 = 3
2 Integer i2 = #()(3).(); //i2 = 3
3 int i3 = #(int x)( x + 1 ).(3); //i3 = 4
4 int i4 = #(Number x)(x.intValue()).(new Float(3.0f)); //i4 = 3
type2
5 int i1 = #(){ return 3; }.(); //i1 = 3
6 Integer i2 = #(){ return 3; }.(); //i2 = 3
7 int i3 = #(int x){ return x + 1; }.(3); //i3 = 4
8 int i4 = #(Number x){ return x.intValue(); }.(new Float(3.0f)); //i4 = 3
关于Java闭包
支持闭包的多数语言都将函数作为第一级对象,就是说这些函数可以存储到变量中、作为参数传递给其他函数,最重要的是能够被函数动态地创建和返回。对于Java是否应该引入闭包特性一直存在争议,详细请参考《百家争鸣 Java需要引入闭包吗?》。去年51CTO曾报道《Java 7决定包含闭包 发布日期推迟至2010年底》的消息,在Devoxx 2009上已基本确定在Java 7中对闭包的引入。
分享到:
相关推荐
Oracle JavaOne 2013 上海成功落幕,吸引了将近两万人参会的甲骨文大会,着实让广大Java开发和数据库管理员云集一堂,甲骨文推出了掌控sun以来真正意义上的一次大的版本发布,Java SE 8将是一个里程碑式的版本,55个...
随后的几年里,Java不断进化,推出了多个关键版本。1996年和1997年分别发布了JDK1.0和JDK1.1,为开发者提供了基础的开发工具。1999年,Java被划分为三个平台:Java 2 Standard Edition (J2SE)、Java 2 Enterprise ...
Java是一种广泛使用的面向对象的编程语言,由Sun Microsystems(现为Oracle公司)开发,并于1995年正式推出。它的设计目标是“一次编写,到处运行”(Write Once, Run Anywhere),这意味着Java编写的代码可以在任何...
Java 是一种面向对象的编程语言,由 Sun Microsystems(现已被 Oracle 收购)于1995年推出。它的设计目标是“一次编写,到处运行”,意味着编写的 Java 程序可以在任何支持 Java 的平台上运行,这得益于其跨平台的 ...
Java是一种广泛使用的面向对象的编程语言,由Sun Microsystems(现为Oracle公司)开发。它的设计目标是具有高可用性、安全性、跨平台兼容性和健壮性。Java有三个主要平台:Java SE(标准版),用于桌面应用;Java EE...
这个版本的API文档对于Java开发者来说是必不可少的资源。 以上所列的在线API只是冰山一角,实际上,还有许多其他领域的API,如地图服务、支付系统、社交媒体、机器学习等。API的发展推动了现代软件工程的进步,使得...
首先,Java是一种广泛使用的面向对象的编程语言,由Sun Microsystems(现为Oracle Corporation)于1995年推出。它的设计目标是简洁、健壮和平台独立,这使得“一次编写,到处运行”成为可能。Java的核心特性包括类、...
Java是一种面向对象的、跨平台的编程语言,由Sun Microsystems(现已被Oracle公司收购)于1995年推出。Java的设计理念是“一次编写,到处运行”,它的应用程序可以在各种操作系统上运行,包括Windows、Mac OS和各种...
在编程领域,Java是一种广泛应用的面向对象的编程语言,由Sun Microsystems(现已被Oracle公司收购)于1995年推出。Java的设计目标是“一次编写,到处运行”(Write Once, Run Anywhere,WORA),这得益于其跨平台的...
1. **JAVA**: Java是一种广泛使用的面向对象的编程语言,由Sun Microsystems(现为Oracle Corporation)开发。它的特点是“一次编写,到处运行”。Java的特点包括平台独立性、垃圾回收机制、丰富的类库以及强大的...
**ADF (Oracle Application Development Framework) 是Oracle公司推出的一款基于Java EE平台的企业级开发框架,用于构建富客户端和Web应用程序。Groovy是一种动态、灵活的Java虚拟机(JVM)语言,它具有简洁的语法和...
Java,由Sun Microsystems(现已被Oracle收购)的James Gosling于1995年推出,是一种面向对象的、跨平台的编程语言。Java以其“一次编写,到处运行”的理念,被广泛应用于服务器端开发、移动应用(尤其是Android平台...
- **JDK 7闭包功能**:Java开发工具包JDK 7计划添加闭包功能,但发布日期推迟至第二年年底。 - **Google Chrome OS细节披露**:Google披露了Chrome OS的部分技术细节。 - **HTTP新协议**:Google正在制定一种新的...
4. **闭包**:Swift的闭包类似Java的Lambda,但支持尾递归和自动捕获上下文变量。 5. **内存管理**:Swift使用自动引用计数(ARC)和弱引用来管理内存,防止循环引用。 6. **SwiftUI**:苹果推出的全新用户界面...
Java是一种广泛使用的面向对象的编程语言,由Sun Microsystems(现为Oracle公司)于1995年推出。它的设计目标是具有“简单性、健壮性、安全性、可移植性、高性能、多线程和动态性”。Java的“一次编写,到处运行”...
1. 发展背景:Java由Sun Microsystems(现Oracle公司)开发,而JavaScript最初由Netscape公司推出。 2. 对象处理:JavaScript是基于对象的,而Java是面向对象的。 3. 类型系统:Java是强类型语言,变量类型必须在...