Implications for Java 9

Prior to Java 9, JavaFX controls as well as CSS functionality were only available to developers by interfacing with internal APIs. Java 9's modularization has made the internal APIs inaccessible. Therefore, JEP 253 was created to define public, instead of internal, APIs.

This was a larger undertaking than it might seem. Here are a few actions that were taken as part of this JEP:

  • Moving javaFX control skins from the internal to public API (javafx.scene.skin)
  • Ensuring API consistencies
  • Generation of a thorough javadoc

The following classes were moved from internal packages to a public javafx.scene.control.skin package:

AccordionSkin ButtonBarSkin ButtonSkin CellSkinBase
CheckBoxSkin ChoiceBoxSkin ColorPickerSkin ...

Get Java 9: Building Robust Modular Applications now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.