1. 聚能聊>
  2. 话题详情

JAVA10正式发布,你还能跟得上节奏吗?

去年的时候Oracle宣布,他们将加快JAVA的发布频率,改为每六个月一次,并且承诺不会跳票,新的发布周期也会严格遵循时间点,将在每年的3月份和9月份发布。所以Java10的版本号是18.3。

Java10是采用新发布周期的第一个版本,提供了109项新特性,其中最备受关注的莫过于局部变量的类型推断。

Java10的12项关键新特性:

1、(JEP 286) Local-Variable Type Inference: Enhances the Java Language to extend type inference to declarations of local variables with initializers. It introduces var to Java, something that is common in other languages.
2、(JEP 296) Consolidate the JDK Forest into a Single Repository: Combine the numerous repositories of the JDK forest into a single repository in order to simplify and streamline development.
3、(JEP 204) Garage Collector Interface: Improves the source code isolation of different garbage collectors by introducing a clean garbage collector (GC) interface.
4、(JEP 307) Parallel Full GC for G1: Improves G1 worst-case latencies by making the full GC parallel.
5、(JEP 301) Application Data-Class Sharing: To improve startup and footprint, this JEP extends the existing Class-Data Sharing (“CDS”) feature to allow application classes to be placed in the shared archive.
6、(JEP 312) Thread-Local Handshakes: Introduce a way to execute a callback on threads without performing a global VM safepoint. Makes it both possible and cheap to stop individual threads and not just all threads or none.
7、(JEP 313) Remove the Native-Header Generator Tool: Remove the javah tool from the JDK since it has been superseded by superior functionality in javac.
8、(JEP 314) Additional Unicode Language-Tag Extensions: Enhances java.util.Locale and related APIs to implement additional Unicode extensions of BCP 47 language tags.
9、(JEP 316) Heap Allocation on Alternative Memory Devices: Enables the HotSpot VM to allocate the Java object heap on an alternative memory device, such as an NV-DIMM, specified by the user.
10、(JEP 317) Experimental Java-Based JIT Compiler: Enables the Java-based JIT compiler, Graal, to be used as an experimental JIT compiler on the Linux/x64 platform.
11、(JEP 319) Root Certificates: Provides a default set of root Certification Authority (CA) certificates in the JDK.
12、(JEP 322) Time-Based Release Versioning: Revises the version-string scheme of the Java SE Platform and the JDK, and related versioning information, for present and future time-based release models.

在jaxenter的调查结果中显示,大多数的人仍在使用JAVA8

_

当然我相信很多人连java9都没用过,更新太快导致很多开发者措手不及,那么问题来了

1、你是否有使用java,如果有你当前所用的版本是什么?
2、作为开发者来说,你觉得JAVA的版本更新是否过快,你认为可以跟得上节奏吗?
3、你觉得JAVA的发展前景如何?你会推荐身边的人去学习JAVA吗?

参与话题

奖品区域 活动规则 已 结束

  • 奖品一

    阿里云代金券 x 3

  • 奖品二

    手机话费 x 3

  • 奖品三

    定制保温杯 x 1

41个回答

0

学长_

1、你是否有使用java,如果有你当前所用的版本是什么?
大部分业务用到java8,还有的业务用的6...更不用过9,10了

2、作为开发者来说,你觉得JAVA的版本更新是否过快,你认为可以跟得上节奏吗?
更新的不是太快,但是有的新特性也基本用不上,不过就算更新快,对开发人员来说是很好的事情。因为用更多封装的方法供我们使用了,可以更快地引入新语言、库和VM更改,而不会中断那些希望采取保守更新方式的企业。

3、你觉得JAVA的发展前景如何?你会推荐身边的人去学习JAVA吗?
作为一种最流行的网络编程语言之一,Java的应用可以说是无处不在,从桌面办公应用到网络数据库等应用,从PC到嵌入式移动平台,从Java小应用程序到架构庞大的J2EE企业级解决方案,处处都有Java的身影。概括Java有着自己独特的优势:语言简单、是一个面向对象、分布式应用并且安全、体系结构中立并且可移植,重要,它是一个动态语言。

2

微wx笑 已获得手机话费 复制链接去分享

先补个中文的特性说明:
JEP286,var 局部变量类型推断。
JEP296,将原来用 Mercurial 管理的众多 JDK 仓库代码,合并到一个仓库中,简化开发和管理过程。
JEP304,统一的垃圾回收接口。
JEP307,G1 垃圾回收器的并行完整垃圾回收,实现并行性来改善最坏情况下的延迟。
JEP310,应用程序类数据 (AppCDS) 共享,通过跨进程共享通用类元数据来减少内存占用空间,和减少启动时间。
JEP312,ThreadLocal 握手交互。在不进入到全局 JVM 安全点 (Safepoint) 的情况下,对线程执行回调。优化可以只停止单个线程,而不是停全部线程或一个都不停。
JEP313,移除 JDK 中附带的 javah 工具。可以使用 javac -h 代替。
JEP314,使用附加的 Unicode 语言标记扩展。
JEP317,能将堆内存占用分配给用户指定的备用内存设备。
JEP317,使用 Graal 基于 Java 的编译器,可以预先把 Java 代码编译成本地代码来提升效能。
JEP318,在 OpenJDK 中提供一组默认的根证书颁发机构证书。开源目前 Oracle 提供的的 Java SE 的根证书,这样 OpenJDK 对开发人员使用起来更方便。
JEP322,基于时间定义的发布版本,即上述提到的发布周期。版本号为$FEATURE.\$INTERIM.$UPDATE.\$PATCH,分别是大版本,中间版本,升级包和补丁版本。

1、你是否有使用java,如果有你当前所用的版本是什么?
java8

2、作为开发者来说,你觉得JAVA的版本更新是否过快,你认为可以跟得上节奏吗?
更新快,说明比较活跃,关注的人还比较多吧。
作为学习,可以跟着新版本走;
但是公司里边感觉不会升到10。

3、你觉得JAVA的发展前景如何?你会推荐身边的人去学习JAVA吗?
不看好,怎么感觉编程语言有在向JS靠拢的趋势。
还是去学Python和JS吧。
教育部将Python纳入全国计算机等级考试科目
Python与人工智能
Atwood定律:“任何可以使用JavaScript来编写的应用,最终会由JavaScript编写。”

0

foamvalue 已获得手机话费 复制链接去分享

1、你是否有使用java,如果有你当前所用的版本是什么?
Java8
2、作为开发者来说,你觉得JAVA的版本更新是否过快,你认为可以跟得上节奏吗?
更新很快,
跟不上节奏,
业务需求,推进Java版本升级。
快速的Java版本更新,提供了广阔的升级空间。
3、你觉得JAVA的发展前景如何?你会推荐身边的人去学习JAVA吗?
前景一般,还是很推荐学习Java。
但是,业余还是要多学习其他语言,进行互补。

0

sinb520 已获得手机话费 复制链接去分享

1、你是否有使用java,如果有你当前所用的版本是什么?
答:因为自己是Android开发者,从开始自学Android那天起一直都在使用Java,当前使用的版本是JDK1.8.0_161。
2、作为开发者来说,你觉得JAVA的版本更新是否过快,你认为可以跟得上节奏吗?
答:更新是有点频繁了,需要经常性的学习,但是对于我还好,我只有需要用的时候再去深入学习,平时的话就稍微了解一下就行,没有太大的负担。
3、你觉得JAVA的发展前景如何?你会推荐身边的人去学习JAVA吗?
答:Java是世界上最好的语言,不解释!发展前景的话可能不如Kotlin和Python,但毕竟基数摆在那,使用Java的开发者和需要Java的地方还有很多,暂时地位很难动摇。果断会推荐身边的人学习Java啊,但是确实不容易,因为不断更新,就像我们经常说的那样,Android刚出来的时候,要学习的东西并不多,出了新的东西再去了解学习就行,但是现在要想再从头学习Android,工作量就要大得多,让很多人望而止步,所以先机很重要。当然我还要感谢Java和Android,当时如果没有自学Java和Android的话就没有今天。

0

aoteman675 已获得阿里云代金券 复制链接去分享

1、你是否有使用java,如果有你当前所用的版本是什么?
当前编写环境是Java8,服务器也是使用Java8。等版本成熟了再去考虑升级,目前还是使用稳定版本为主。
2、作为开发者来说,你觉得JAVA的版本更新是否过快,你认为可以跟得上节奏吗?
Java8才开发没多久就上10了,更多的新特性被发布。其实很多功能都没有用到,在阿里云镜像市场上,我看到很多java环境还是6。其实还是要跟着项目走,比如新项目用到的特性较高或者环境要求高一些,就上新版本。很多新发布的框架都会要求Java版本的,所以我们还是跟着项目走就行了,常规速度跟上节奏。
3、你觉得JAVA的发展前景如何?你会推荐身边的人去学习JAVA吗?
就目前来说还是香饽饽,因为很多分布式和大数据架构都还是Java写的,很多成熟框架也是基于java。目前企业级的系统架构都还是以java为主,从底层架构到顶层应用程序都要java的脚印。如果想往应用层方向发展的同事我会推荐java的。scala和java兼容,kotlin兼容java,所以要从java开始,不能马上入手新语言。

0

浮生递归 已获得阿里云代金券 复制链接去分享

1、你是否有使用java,如果有你当前所用的版本是什么?
一般新项目,都会用尽量新,但又不是最新的版本,怕有坑。老的项目继续沿用老的版本,没毛病。

2、作为开发者来说,你觉得JAVA的版本更新是否过快,你认为可以跟得上节奏吗?
快,非常快。特别是跟其他语言比起来,看别的语言,几年才出一个版本啊。更新太快,导致学习成本太高。当然,如果是只搞一个JAVA的话,压力不会太大。但是正常是一个开发人员,同时要掌握多种技能的。如果每个技能都更新这么快的就玩完了。我单位还有同时在用VS 2005呢!我前几天刚装了VS 2015。跨度有点大。2017还不敢去碰。

3、你觉得JAVA的发展前景如何?你会推荐身边的人去学习JAVA吗?
前景很好啊,身边的同事都慢慢开始转向JAVA了。最开始只有技术总监一个人干,后来他发现不错,就开始让其他同事也一起转。现在好像只有一个同事没转JAVA了。不过我离JAVA的距离还很长。中间还有好几门语言要学……

0

cjsoldier 已获得定制保温杯 复制链接去分享

1、你是否有使用java,如果有你当前所用的版本是什么?
java8

2、作为开发者来说,你觉得JAVA的版本更新是否过快,你认为可以跟得上节奏吗?
从java5~java7之后好像就没什么变化。java7本来应该发布lambda表达式的,可惜推迟到java8才发布。
从java8开始速度明显快了。自从学scala之后,java8很多新语法都没有学。java9的模块化就更不用说了。
我看到有些项目用java8写的。很多新语法不懂,api都不知道怎么调用了。

3、你觉得JAVA的发展前景如何?你会推荐身边的人去学习JAVA吗?
从Java10的新特性来看,Java还是能跟得上时代的。虽然我不知道一个现代化的高级语言应该有那些酷炫的特性,
但在我心目中Java10算得上是一门现代化的编程语言了。
但是从语言的发展来看,我心中一直有一个结解不开,就是Java的模块化问题。我总感觉这个问题不解决好,Java药丸。

Java找工作是没问题的。我会推荐身边的人学习Java。因为它好学,好用,小伙伴多,资料多,入门的时候不容易踩坑。

1

shenyu8454 复制链接去分享

浮生若梦,如梦亦如幻,自从进了阿里云感觉自己变傻了!

1

北方小伙 复制链接去分享

遇到苦难就上阿里云。破解一切难题 ,阿里云值得信耐!

1

1767564518943498 复制链接去分享

英语差,俺看不懂

0

快递 复制链接去分享

你是否有使用java,如果有你当前所用的版本是什么?
java8

0

nemo丶 复制链接去分享

半年一更新,有点太快了😁

0

musibing 复制链接去分享

Java有什么功能

0

1538421940112725 复制链接去分享

已经脱离世界十几年,用的还是java6版本

0

1678292039455835 复制链接去分享

搞不懂

0

老离 复制链接去分享

1、你是否有使用java,如果有你当前所用的版本是什么?
用过,jdk1.8

2、作为开发者来说,你觉得JAVA的版本更新是否过快,你认为可以跟得上节奏吗?
还行,底层的东西变化不大,只是多封装了一些特性,根本上的改变是极少的,能跟上

3、你觉得JAVA的发展前景如何?你会推荐身边的人去学习JAVA吗?
目前使用最多的编程语言,java还是高居榜首,市场是最有说服力的,学java什么时候都不晚,会的,java入门简单,成熟框架也多,可以适应企业级快速开发。学java吧少年们

0

小脑斧123 复制链接去分享

我第一次接触阿里云,不过好像运气不错,有哥哥姐姐教我,带我一起玩一下吗

0

粽子何 复制链接去分享

虽然还没有用过java9,但我还是很看好java的,更新快是好事,说明功能越来越强大,只要兼容低版本就好。。。

0

1285921697935331 复制链接去分享

加快速度!就是适应社会的速度!现在是快节奏的生活!Java也一样!

0

吕睿 复制链接去分享

现在用的是JAVA8,我对于JAVA现在是一个小白,从最基础的东西开始学起,以后有不懂的,还望大神们能够多多指教!

2