JDK 9: Pitfalls for the unwary :
​​​https://jaxenter.com/jdk-9-pitfalls-136968.html​

What’s New in Oracle JDK 9 :
​​​https://docs.oracle.com/javase/9/whatsnew/toc.htm#JSNEW-GUID-C23AFD78-C777-460B-8ACE-58BE5EA681F6​

​​JDK 9 新特性中文翻译版​​

​​JDK 9 中一些需要提防的坑​​

​​一起谈谈 Java 9 的新特性​​

​​Java 9 中的 9 个新特性​​

附上 JDK 9 特性一览:

102: ​​Process API 更新​

110: ​​HTTP 2 Client​

143: ​​提升访问对象时的线程竞争处理​

158: ​​统一 JVM 日志​

165: ​​Compiler Control​

193: ​​Variable Handles​

197: ​​分割代码缓存区​​

199: ​​Smart Java Compilation, ​​​​第二阶段​​

200: ​​模块化JDK​

201: ​​模块化源码​

211: ​​Elide Deprecation Warnings on Import Statements​

212: ​​Resolve Lint and Doclint Warnings​

213: ​​Milling Project Coin​

214: ​​Remove GC Combinations Deprecated in JDK 8​

215: ​​Tiered Attribution for javac​

216: ​​Process Import Statements Correctly​

217: ​​Annotations Pipeline 2.0​

219: ​​Datagram Transport Layer Security (DTLS)​

220: ​​模块化运行时镜像​

221: ​​Simplified Doclet API​

222: ​​jshell: The Java Shell (Read-Eval-Print Loop)​

223: ​​New Version-String Scheme​

224: ​​HTML5 Javadoc​

225: ​​Javadoc Search​

226: ​​UTF-8 Property Files​

227: ​​Unicode 7.0​

228: ​​Add More Diagnostic Commands​

229: ​​Create PKCS12 Keystores by Default​

231: ​​Remove Launch-Time JRE Version Selection​

232: ​​Improve Secure Application Performance​

233: ​​Generate Run-Time Compiler Tests Automatically​

235: ​​Test Class-File Attributes Generated by javac​

236: ​​Parser API for Nashorn​

237: ​​Linux/AArch64 Port​

238: ​​Multi-Release JAR Files​

240: ​​Remove the JVM TI hprof Agent​

241: ​​Remove the jhat Tool​

243: ​​Java-Level JVM Compiler Interface​

244: ​​TLS Application-Layer Protocol Negotiation Extension​

245: ​​Validate JVM Command-Line Flag Arguments​

246: ​​Leverage CPU Instructions for GHASH and RSA​

247: ​​Compile for Older Platform Versions​

248: ​​Make G1 the Default Garbage Collector​

249: ​​OCSP Stapling for TLS​

250: ​​Store Interned Strings in CDS Archives​

251: ​​Multi-Resolution Images​

252: ​​Use CLDR Locale Data by Default​

253: ​​Prepare JavaFX UI Controls & CSS APIs for Modularization​

254: ​​Compact Strings​

255: ​​Merge Selected Xerces 2.11.0 Updates into JAXP​

256: ​​BeanInfo Annotations​

257: ​​Update JavaFX/Media to Newer Version of GStreamer​

258: ​​HarfBuzz Font-Layout Engine​

259: ​​Stack-Walking API​

260: ​​Encapsulate Most Internal APIs​

261: ​​模块化系统​

262: ​​TIFF Image I/O​

263: ​​HiDPI Graphics on Windows and Linux​

264: ​​Platform Logging API and Service​

265: ​​Marlin Graphics Renderer​

266: ​​More Concurrency Updates​

267: ​​Unicode 8.0​

268: ​​XML Catalogs​

269: ​​Convenience Factory Methods for Collections​

270: ​​Reserved Stack Areas for Critical Sections​

271: ​​Unified GC Logging​

272: ​​Platform-Specific Desktop Features​

273: ​​DRBG-Based SecureRandom Implementations​

274: ​​Enhanced Method Handles​

275: ​​Modular Java Application Packaging​

276: ​​Dynamic Linking of Language-Defined Object Models​

277: ​​Enhanced Deprecation​

278: ​​Additional Tests for Humongous Objects in G1​

279: ​​Improve Test-Failure Troubleshooting​

280: ​​Indify String Concatenation​

281: ​​HotSpot C++ Unit-Test Framework​

282: ​​jlink: The Java Linker​

283: ​​Enable GTK 3 on Linux​

284: ​​New HotSpot Build System​

285: ​​Spin-Wait Hints​

287: ​​SHA-3 Hash Algorithms​

288: ​​Disable SHA-1 Certificates​

289: ​​Deprecate the Applet API​

290: ​​Filter Incoming Serialization Data​

291: ​​Deprecate the Concurrent Mark Sweep (CMS) Garbage Collector​

292: ​​Implement Selected ECMAScript 6 Features in Nashorn​

294: ​​Linux/s390x Port​

295: ​​Ahead-of-Time Compilation​

297: ​​Unified arm32/arm64 Port​

298: ​​Remove Demos and Samples​

299: ​​Reorganize Documentation​