QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

Java 7 需要类型推断吗?

  • 2007-04-19
  • 本文字数:634 字

    阅读完需:约 2 分钟

请点击此链接查看英文原文

连续几周以来,Java 社区一直为是否向 Java 7 加入类型推断(Type Inference)的概念争论得热火朝天,Remi Forax 撰写了一篇博客文章详细阐述对两个很有人气的提议的 javac 补丁。其中一个提议来自 James Gosling,称为“Algol”,使用:=的语法来标识声明:

s := "String";

另一个提议来自 Peter Ahe 和 Christian Hansen,使用final关键字:

final s = "String";

两种提议都存在副作用,都会使局部变量变成 final。有不少开发人员对这个特性持反对意见

在某些语言中,类型推断确实存在意义,比如 JavaScript 和 PHP 就是围绕着它构建的,它们自打诞生第一天就具备这个特性 了。但是,它对于 Java 这样围绕着其相反方式构建的语言而言,毫无意义。看起来它好像让 Java 类型变得弱化了,但事实上并非如此。实际上,如果有什么 不同的话,那就是它会使得 Java 变得更加强类型,因为比如说你必须指名一个 Map 变量的类型为 HashMap 或者 TreeMap,而仅仅是 Map……该 是时候停止往 Java 语言内加入新特性了。我不是说这些特性不对,而只是说它们不适合这门语言。Java 语言早就浮肿不堪了。我不是说泛型 (Generics)、类型推断、闭包(Closures)、编译器创建的工厂方法和其它 Kitchen Sink 提案搞糟透顶,它们不是那样的。我只是说它们仅仅不适合或者符合目前的核心语言,我们每加进一个,语言就变得更糟,而不是更好。

讨论引出这样的一个问题:到底 Java 7 应当让 Java 语言保持原样,还是应当另外加入一些语言构造,比如类型推断和闭包呢?

2007-04-19 11:00860
用户头像

发布了 117 篇内容, 共 16.2 次阅读, 收获喜欢 0 次。

关注

评论

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

【HarmonyOS】鸿蒙仿iOS线性渐变实现

zhongcx

【HarmonyOS】公司鸿蒙项目收工总结之《三方库》

zhongcx

【HarmonyOS】鸿蒙自定义TabLayout示例

zhongcx

【HarmonyOS】鸿蒙面包屑导航实现示例

zhongcx

【HarmonyOS】鸿蒙利用emitter封装工具类

zhongcx

【HarmonyOS】公司鸿蒙项目收工总结之《组件》

zhongcx

降低数据平台成本 ,Apache Airflow迁移上云案例分享

华为云开发者联盟

开源 CCE apache 社区 华为云DTSE

【HarmonyOS】鸿蒙Flex布局文本位置

zhongcx

【HarmonyOS】鸿蒙动画旋转方式比较

zhongcx

【HarmonyOS】鸿蒙选择列表数量限制

zhongcx

办公必备软件:ConceptDraw Office(业务图表、思维导图和项目管理)

Rose

【HarmonyOS】鸿蒙头像裁剪圆形遮罩效果实现demo

zhongcx

鸿蒙应用示例:购物车侧滑删除、侧滑收藏、计算价格

zhongcx

鸿蒙应用示例:系统退出应用的最佳实践

zhongcx

Microsoft Remote Desktop 微软远程访问工具 mac中文直装版

Rose

【HarmonyOS】鸿蒙抖动动画方案

zhongcx

【HarmonyOS】鸿蒙TextInput值获取方法

zhongcx

【HarmonyOS】鸿蒙背景色渐变叠加

zhongcx

【HarmonyOS】鸿蒙九宫格拼图游戏

zhongcx

【HarmonyOS】公司鸿蒙项目收工总结之《API》

zhongcx

【HarmonyOS】公司鸿蒙项目收工总结之《屏幕适配》

zhongcx

【HarmonyOS】鸿蒙横向List高度适配

zhongcx

【HarmonyOS】鸿蒙多Toast显示工具类

zhongcx

鸿蒙应用示例:图像处理优化与交互改进

zhongcx

【HarmonyOS】鸿蒙Web组件同步与异步数据获取

zhongcx

【HarmonyOS】鸿蒙搜索历史记录

zhongcx

【HarmonyOS】鸿蒙图片淡入淡出切换

zhongcx

鸿蒙应用示例:如何解决DevEco预览器上下白色间距问题及实现全屏沉浸式体验

zhongcx

【HarmonyOS】鸿蒙borderRadius百分比计算

zhongcx

【HarmonyOS】鸿蒙TextInput小数限制

zhongcx

【HarmonyOS】鸿蒙高仿华为阅读翻页

zhongcx

Java 7需要类型推断吗?_Java_Scott Delap_InfoQ精选文章