Chapter 1: The Java 9 Landscape Java 9 at 20,000 feet Breaking the monolith Playing around with the Java Shell Taking control of external processes Boosting performance with G1 Measuring performance with JMH Getting started with HTTP 2,0 Encompassing reactive programming Expanding the wish list Summary
Chapter 2: Discovering Java 9 Improved Contended Locking [JEP 143] Improvement goals Segmented code cache [JEP 197] Memory allocation Smart Java compilation, phase two [JEP 199] Resolving Lint and Doclint warnings [JEP 212] Tiered attribution for javac [JEP 215] Annotations pipeline 2.0 [JEP 217] New version-string scheme [JEP 223] Generating run-time compiler tests automatically [JEP 233] Testing class-file attributes generated by Javac [JEP 235] Storing interned strings in CDS archives [JEP 250] The problem The solution Preparing JavaFX UI controls and CSS APIs for modularization [JEP253] JavaFX overview Implications for Java 9 Compact strings [JEP 254] Pre-Java 9 status New with Java 9 Merging selected Xerces 2.11.0 updates into JAXP [JEP 255] Updating JavaFX/Media to newer version of GStreamer [JEP 257] HarfBuzz Font-Layout Engine [JEP 258] HiDPI graphics on Windows and Linux [JEP 263] Marlin graphics renderer [JEP 265] Unicode 8.0.0 [JEP 267] New in Unicode 8.0.0 Updated Classes in Java 9 Reserved stack areas for critical sections [JEP 270] The pre-Java 9 situation New in Java 9 Dynamic linking of language-defined object models [JEP 276] Proof of concept Additional tests for humongous objects in G1 [JEP 278] Improving test-failure troubleshooting [JEP 279] Environmental information Java process information Optimizing string concatenation [JEP 280] HotSpot C++ unit-test framework [JEP 281] Enabling GTK 3 on Linux [JEP 283] New HotSpot build system [JEP 284] Summary
Chapter 3: Java 9 Language Enhancements Working with variable handlers [JEP 193] Working with the AtoMiC Toolkit Using the sun.misc.Unsafe class Eliding depreciation warnings on import statements [JEP 211] Milling Project Coin [JEP 213] Using the @SafeVarargs annotation The try-with-resource statement Using the diamond operator Discontinuing use of the underscore Making use of private interface methods Processing import statements correctly [JEP 216] Summary
Chapter 4: Building Modular Applications with Java 9 A modular primer Reviewing Java's platform module system [JEP-200] ……
Chapter 5: Migrating Applications to Java 9 Chapter 6: Experimenting with the Java Shell Chapter 7: Leveraging the New Default G1 Garbage Collector Chapter 8: Microbenchmarking Applications with JMH Chapter 9: Making Use of the ProcessHandle API Chapter 10: Fine-Grained Stack Tracing Chapter 11: New Tools and Tool Enhancements Chapter 12: Concurrency and Reactive Programming Chapter 13: Security Enhancements Chapter 14: Command Line Flags Chapter 15: Best Practices In Java 9 Chapter 16: Future Directions
以下为对购买帮助不大的评价