【AICon】探索八个行业创新案例,教你在教育、金融、医疗、法律等领域实践大模型技术! >>> 了解详情
写点什么

Java 闭包提案比较 JCA 意见书发布

  • 2007-04-15
  • 本文字数:756 字

    阅读完需:约 2 分钟

Java 闭包的 C3S 提案作者 Howard Lovatt,为四份著名的提案( C3S FCM CICE BGGA )编写了一份详细的比较。同时,FCM 的作者们发布了一份新的建立于FCM 基础上的关于Java 控制抽象的意见书。Ricky Clarkson 认为 CICE 是不足的,而且怀疑 Google 的内部策略正影响着它。

Lovatt 遍历了四份提案,并以十一个特性比较了它们:

  1. 创建一个内部类 / 闭包实体时的短语法
  2. 访问内部类的this指针与方法
  3. 多于一个方法存在于内部类 / 闭包实体
  4. 定义于类的方法的实现
  5. 类型推断
  6. 方法、构造函数、属性的字面表达
  7. 短语法(特别用于控制结构语句与短方法)
  8. 局部变量的赋值,无需final声明
  9. 数量可变的异常
  10. 方法 / 函数的类型(使用更短的语法)
  11. 非局部跳转、returnbreakcontinue

他文章的目的是从提案中分开内部类 / 闭包的部分与其他额外的部分。在这篇比较的最后,Stephen Colebourne、Stefan Schulz 和 Ricky Clarkson 建立了一份基于 FCM 的关于 Java 控制抽象的意见书(他们澄清说那不是一份意见书而且还没最终完成)。需要 JCA 参与的原因是有一些地方还不适合。比如存在一个 API,在使用上与内置的关键字非常相像。

最后,Ricky Clarkson 怀疑 Google 的内部策略正影响着 CICE 提案的进一步发展。JCP 对向它提交议案的组织有着限制,特别是当公司的雇员是 JCP 的成员时,Clarkson 建议 Josh Bloch,Google 在 JCP 的联系人,既然他提交了 CICE 的提案,就应该在创建 JSR 时回避。CICE 的另一位作者 Bob Lee 回应 Clarkson 说这是个不公平的建议,而且现在不用急急忙忙的闭包加入到 Java 中。

译者简介:肖桦是 InfoQ 中文站的志愿者翻译。他的网名为“江南白衣”,Java 领域专家,开源JavaEE 项目 SpringSide 发起人,现任广州电信研究院亿迅科技有限公司任设计中心设计主管。加入 InfoQ 中文站志愿者翻译队伍,请邮件至 china-editorial@infoq.com

2007-04-15 19:30621

评论

发布
暂无评论
发现更多内容

一文读懂封装

断墨寻径

#java 三周年征文

数据库原理及MySQL应用 | 约束

TiAmo

数据库 MySQL数据库 三周年连更 数据库约束

跨平台应用开发进阶(四十三)一文走近网络层抓包工具:WhireShark

No Silver Bullet

网络层 抓包工具 三周年连更

一文掌握 Go 文件的读取操作

陈明勇

Go golang 文件读取 三周年连更

从ReentrantLock角度解析AQS

Java AQS 并发

Java程序控制结构

timerring

Java

Unity 之 使用原生UGUI实现随手移动摇杆功能经典实例

陈言必行

Unity 三周年连更

对话ChatGPT:Prompt是普通人“魔法”吗?

Alter

【坚果派-坚果】获取OpenHarmony 3.2 Release源码的两种方式

坚果

HarmonyOS OpenHarmony OpenHarmony3.2 三周年连更

C生万物 | 反汇编深挖【函数栈帧】的创建和销毁

Fire_Shield

C语言 汇编 三周年连更 函数栈帧

kubernetes fifo源码解析

欢乐的阿苏

golang DevOps 后端 源码阅读 #Kubernetes#

Golang并发编程实战:使用ring buffer实现高效的阻塞队列

Jack

AI日课@20230412:Prompt Engineering

无人之路

ChatGPT

devops|中小公司不要做研发效能度量

laofo

DevOps 研发效能 效能度量 DevOps工具链 研发效能度量

影驰 GeForce RTX 4070显卡正式开售!星曜 OC系列首发评测抢先看

Geek_2d6073

程序员如何保住自己的饭碗?| 社区征文

liuzhen007

程序员 三周年征文

ContentProvider介绍

智趣匠

ContextClassLoader 三周年连更

成都.NET线下技术沙龙倒计时一天

MASA技术团队

.net 开发者 MASA Stack

Unity 之 转微信小游戏本地数据存储

陈言必行

Unity 三周年连更

RabbitMQ组件介绍

穿过生命散发芬芳

RabbitMQ 三周年连更

Go语言开发小技巧&易错点100例(三)

海风极客

Go 三周年连更

zookeeper的节点加密方式及分布式锁实现过程

浅羽技术

三周年连更

论程序员的为码之“道”

酱紫的小白兔

不要过于吹捧ChatGPT:人工智能生成文字还有很大提升空间

石头IT视角

5 分钟带你小程序入门 [实战总结分享]

程序员海军

小程序 微信小程序 前端 三周年连更

kubernetes indexer源码解析

欢乐的阿苏

golang DevOps cache 源码阅读 #Kubernetes#

一定是疯了!在M1的Mac上玩OpenVINO,让Intel怎么看我?

IT蜗壳-Tango

OpenVINO Stable Diffusion 三周年连更

Spider实战-抓取视频

浅辄

三周年连更

危中蕴机:Oi! Network展现出的勇气和决心

股市老人

kubernetes delta_fifo源码解析

欢乐的阿苏

golang DevOps 后端 源码阅读 #Kubernetes#

【Linux】之【磁盘】相关的命令及解析[df、du、iostat、iotop]

A-刘晨阳

Linux 三周年连更 磁盘空间

Java闭包提案比较 JCA意见书发布_Java_Rob Thornton_InfoQ精选文章