The Java Version Almanac
javaalmanac.io
Feedback on this page?

New APIs in Java 23

Comparing Java 23 (23-ea+18-1469-open) with Java 22 (22.0.1+8-tem).

Element Modification
java.base
    java.lang.classfile
      ClassFile
        ClassSignature
          of(List, Signature.RefTypeSig,...
          of(Signature.RefTypeSig, Signature.RefTypeSig...)
          superclassSignature()
          java.lang.reflect
            ClassFileFormatVersion
              java.lang.runtime
                java.lang
                  ThreadGroup
                    resume()
                    stop()
                    suspend()
                    Thread
                      resume()
                      suspend()
                      java.text
                        ChoiceFormat
                          CompactNumberFormat
                            DecimalFormat
                              MessageFormat
                                SimpleDateFormat
                                  java.util.zip
                                    Deflater
                                      • + deprecated
                                      • + deprecated
                                      Inflater
                                        • + deprecated
                                        • + deprecated
                                        ZipFile
                                          java.compiler
                                            javax.lang.model.util
                                              • added preview
                                              • added preview
                                              • added preview
                                              • added preview
                                              • added preview
                                              • added preview
                                              • added preview
                                              • added preview
                                              • added preview
                                              Types
                                                javax.lang.model
                                                  SourceVersion
                                                    javax.tools
                                                      SimpleJavaFileObject
                                                        java.desktop
                                                          javax.swing.plaf.synth
                                                            SynthTreeUI
                                                              javax.swing
                                                                JScrollBar
                                                                  java.management.rmi
                                                                    javax.management.remote.rmi
                                                                      RMIConnector
                                                                        getMBeanServerConnection(Subject)
                                                                        • removed
                                                                        java.management
                                                                          javax.management.loading
                                                                            MLetContent
                                                                            MLet
                                                                            PrivateMLet
                                                                            MLetMBean
                                                                            javax.management.remote
                                                                              JMXConnector
                                                                                • - abstract

                                                                                This report is based on simple comparison of all public and protected APIs of the java.* and javax.* packages of JDK builds 23-ea+18-1469-open and 22.0.1+8-tem. It does not make statements about compatibility.

                                                                                For the latest Java versions the corresponding CSRs (Compatibility & Specification Review) are linked for a quick reference to find out about the reasoning of the change.

                                                                                More detailed API comparisons based on the japicmp tool can be found here.