`

Oracle推出首个Java 7闭包版本

    博客分类:
  • Java
阅读更多

51CTO快译】虽然关于Java 7闭包一直波澜不断,开发者们也对Java是否真的需要引入闭包存在争议,但Oracle还是在两天前放出了Java 7闭包的第一个版本。我们可以在测试项目中看到Java编译器语法规则的演变。点此查看测试项目

Oracle发布的最新版本有以下功能更新:

函数类型语法

函数类型的子类型

全面支持Lambda表达式

lambda中对thrown/return类型的引用

Oracle的更新说明中显示,这里所提到的函数类型在默认情况下不会启动,必须使用XDallowFunctionTypes来启用。以下为示例:

type1lambda表达式:

int i1 = #()(3).(); //i1 = 3 

Integer i2 = #()(3).(); //i2 = 3 

int i3 = #(int x)( x + 1 ).(3); //i3 = 4 

int i4 = #(Number x)(x.intValue()).(new Float(3.0f)); //i4 = 3 

type2

int i1 = #(){ return 3; }.(); //i1 = 3 

Integer i2 = #(){ return 3; }.(); //i2 = 3 

int i3 = #(int x){ return x + 1; }.(3); //i3 = 4 

int i4 = #(Number x){ return x.intValue(); }.(new Float(3.0f)); //i4 = 3 

关于Java闭包

支持闭包的多数语言都将函数作为第一级对象,就是说这些函数可以存储到变量中、作为参数传递给其他函数,最重要的是能够被函数动态地创建和返回。对于Java是否应该引入闭包特性一直存在争议,详细请参考《百家争鸣 Java需要引入闭包吗?》。去年51CTO曾报道《Java 7决定包含闭包 发布日期推迟至2010年底》的消息,在Devoxx 2009上已基本确定在Java 7中对闭包的引入。

 

分享到:
评论

相关推荐

    55 新特性之Java SE 8

    Oracle JavaOne 2013 上海成功落幕,吸引了将近两万人参会的甲骨文大会,着实让广大Java开发和数据库管理员云集一堂,甲骨文推出了掌控sun以来真正意义上的一次大的版本发布,Java SE 8将是一个里程碑式的版本,55个...

    java语言的发展

    随后的几年里,Java不断进化,推出了多个关键版本。1996年和1997年分别发布了JDK1.0和JDK1.1,为开发者提供了基础的开发工具。1999年,Java被划分为三个平台:Java 2 Standard Edition (J2SE)、Java 2 Enterprise ...

    JAVA JAVA JAVA JAVA

    Java是一种广泛使用的面向对象的编程语言,由Sun Microsystems(现为Oracle公司)开发,并于1995年正式推出。它的设计目标是“一次编写,到处运行”(Write Once, Run Anywhere),这意味着Java编写的代码可以在任何...

    个人日常技术学习笔记。目前主要涵盖 Java 、JavaScript 、MySQL.zip

    Java 是一种面向对象的编程语言,由 Sun Microsystems(现已被 Oracle 收购)于1995年推出。它的设计目标是“一次编写,到处运行”,意味着编写的 Java 程序可以在任何支持 Java 的平台上运行,这得益于其跨平台的 ...

    Java,JavaScript,HTML等几十种chm文档

    Java是一种广泛使用的面向对象的编程语言,由Sun Microsystems(现为Oracle公司)开发。它的设计目标是具有高可用性、安全性、跨平台兼容性和健壮性。Java有三个主要平台:Java SE(标准版),用于桌面应用;Java EE...

    各种在线api

    这个版本的API文档对于Java开发者来说是必不可少的资源。 以上所列的在线API只是冰山一角,实际上,还有许多其他领域的API,如地图服务、支付系统、社交媒体、机器学习等。API的发展推动了现代软件工程的进步,使得...

    javastudy

    首先,Java是一种广泛使用的面向对象的编程语言,由Sun Microsystems(现为Oracle Corporation)于1995年推出。它的设计目标是简洁、健壮和平台独立,这使得“一次编写,到处运行”成为可能。Java的核心特性包括类、...

    Java广场

    Java是一种面向对象的、跨平台的编程语言,由Sun Microsystems(现已被Oracle公司收购)于1995年推出。Java的设计理念是“一次编写,到处运行”,它的应用程序可以在各种操作系统上运行,包括Windows、Mac OS和各种...

    [removed]我对Java语言的了解

    在编程领域,Java是一种广泛应用的面向对象的编程语言,由Sun Microsystems(现已被Oracle公司收购)于1995年推出。Java的设计目标是“一次编写,到处运行”(Write Once, Run Anywhere,WORA),这得益于其跨平台的...

    5.0 S2 内测试题

    1. **JAVA**: Java是一种广泛使用的面向对象的编程语言,由Sun Microsystems(现为Oracle Corporation)开发。它的特点是“一次编写,到处运行”。Java的特点包括平台独立性、垃圾回收机制、丰富的类库以及强大的...

    ADF_Groovy(2)

    **ADF (Oracle Application Development Framework) 是Oracle公司推出的一款基于Java EE平台的企业级开发框架,用于构建富客户端和Web应用程序。Groovy是一种动态、灵活的Java虚拟机(JVM)语言,它具有简洁的语法和...

    Javascript.rar_JavaScript/JQuery_Java_

    Java,由Sun Microsystems(现已被Oracle收购)的James Gosling于1995年推出,是一种面向对象的、跨平台的编程语言。Java以其“一次编写,到处运行”的理念,被广泛应用于服务器端开发、移动应用(尤其是Android平台...

    《架构师》12月份期刊

    - **JDK 7闭包功能**:Java开发工具包JDK 7计划添加闭包功能,但发布日期推迟至第二年年底。 - **Google Chrome OS细节披露**:Google披露了Chrome OS的部分技术细节。 - **HTTP新协议**:Google正在制定一种新的...

    -编程研究

    4. **闭包**:Swift的闭包类似Java的Lambda,但支持尾递归和自动捕获上下文变量。 5. **内存管理**:Swift使用自动引用计数(ARC)和弱引用来管理内存,防止循环引用。 6. **SwiftUI**:苹果推出的全新用户界面...

    ava

    Java是一种广泛使用的面向对象的编程语言,由Sun Microsystems(现为Oracle公司)于1995年推出。它的设计目标是具有“简单性、健壮性、安全性、可移植性、高性能、多线程和动态性”。Java的“一次编写,到处运行”...

    JS(Dom+Bom).docx

    1. 发展背景:Java由Sun Microsystems(现Oracle公司)开发,而JavaScript最初由Netscape公司推出。 2. 对象处理:JavaScript是基于对象的,而Java是面向对象的。 3. 类型系统:Java是强类型语言,变量类型必须在...

Global site tag (gtag.js) - Google Analytics