2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

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:001254
用户头像

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

关注

评论

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

架构师训练营 - 第 8 周课后作业(1 期)

阿甘

架构师入门学习感悟四

笑春风

week4学习小结

幸福小子

互联网系统架构

Week 8总结

黄立

亚新资本开创金融理财新征程

LeetCode题解:169. 多数元素,哈希表,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

架构师训练营第 4 周学习总结

菜青虫

极客大学架构师训练营

架构师训练营第 4 周课后练习

菜青虫

极客大学架构师训练营

架构师训练营第 1 期 -- 第八周学习总结

发酵的死神

极客大学架构师训练营

第四周课后练习作业一

lithium

极客大学架构师训练营

第四周课后练习作业二

lithium

架构师训练营 week4 学习总结

花果山

极客大学架构师训练营

架构师训练营 week4 课后作业

花果山

极客大学架构师训练营

架构师训练营第 1 期 -- 第八周作业

发酵的死神

极客大学架构师训练营

四、应用系统探讨

Geek_28b526

产品发布 | 准备好提升你的 ITSM 了吗?

Atlassian

DevOps Atlassian ITSM ITIL

极客时间架构师训练营 1 期 - 第 8 周总结

Kaven

推荐好书:《使用Python进行图像处理和采集》第二版(附下载方式)

计算机与AI

Python 图像处理

一个典型的大型互联网应用系统使用了哪些技术方案和手段,主要解决什么问题?请列举描述

幸福小子

互联网系统架构

「八大排序算法」16张图带你彻底搞懂基数排序

bigsai

排序算法 基数排序

Wi-Fi+BLE 通断器开发资料全开源!快速打造您的智能家居“改装神器”

智能物联实验室

人工智能 物联网 智能家居 通断器

为什么说 Pulsar 是云原生的消息平台?

tison

云原生 消息队列 Apache Pulsar

Java8引入新的日期和时间库,你应该知道

Silently9527

java8

架构师训练营 W04 作业

Geek_f06ede

极客大学架构师训练营

架构师训练营第四周作业2

韩儿

架构师训练营第 1 期第 8 周作业

好吃不贵

极客大学架构师训练营

Architecture Phase1 Week8:HomeWork

phylony-lu

极客大学架构师训练营

架构师训练营第四周作业

韩儿

脱钩!打工人不配拥有Java程序员306道面试秘笈吗?真香

996小迁

Java 学习 架构 面试 笔记

极客时间架构师培训 1 期 - 第 8 周作业

Kaven

Architecture Phase1 Week8:Summarize

phylony-lu

极客大学架构师训练营

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