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

New APIs in Java 20

Comparing Java 20 (20-ea+4-158-open) with Java 18 (18.0.1+10-tem).

Element Modification
java.base
    java.io
      InvalidClassException
        InvalidObjectException
          • + final
          ObjectStreamException
            java.lang.invoke
              • + sealed
              • + sealed
              MethodHandles
                • + sealed
                java.lang.module
                  ModuleDescriptor.Exports
                    • added
                    ModuleDescriptor.Opens
                      • added
                      ModuleDescriptor.Requires
                        • added
                        ModuleDescriptor
                          • added
                          java.lang.ref
                            ReferenceQueue
                              • - throws IllegalArgumentException
                              • + sealed
                              java.lang.reflect
                                Executable
                                  • added
                                  • + abstract
                                  Field
                                    • added
                                    Parameter
                                      • added
                                      • added
                                      • added
                                      Member
                                        • added
                                        java.lang
                                          Character.UnicodeBlock
                                            Class
                                              • added
                                              Double
                                                Float
                                                  Integer
                                                    Long
                                                      Math
                                                        StrictMath
                                                          Thread
                                                            • + deprecated
                                                            Character.UnicodeScript
                                                              java.math
                                                                BigDecimal
                                                                  BigInteger
                                                                    java.net
                                                                      • + sealed
                                                                      SocketException
                                                                        java.nio.channels
                                                                          FileChannel
                                                                            java.nio
                                                                              • + sealed
                                                                              • + sealed
                                                                              • + sealed
                                                                              • + sealed
                                                                              • + sealed
                                                                              • + sealed
                                                                              • + sealed
                                                                              • + sealed
                                                                              • + sealed
                                                                              java.security.cert
                                                                                CertStore
                                                                                  • - final
                                                                                  java.security.interfaces
                                                                                    DSAKeyPairGenerator
                                                                                      • - throws InvalidParameterException
                                                                                      • - throws InvalidParameterException
                                                                                      java.security.spec
                                                                                        PSSParameterSpec
                                                                                          • + deprecated
                                                                                          • + deprecated
                                                                                          java.text
                                                                                            DecimalFormatSymbols
                                                                                              java.time.chrono
                                                                                                IsoChronology
                                                                                                  JapaneseChronology
                                                                                                    MinguoChronology
                                                                                                      ThaiBuddhistChronology
                                                                                                        Chronology
                                                                                                          java.time.format
                                                                                                            DateTimeFormatterBuilder
                                                                                                              DateTimeFormatter
                                                                                                                java.time
                                                                                                                  • + sealed
                                                                                                                  ZoneOffset
                                                                                                                    java.util.concurrent
                                                                                                                      CompletableFuture
                                                                                                                        • + final
                                                                                                                        Executors
                                                                                                                          ForkJoinPool
                                                                                                                            ForkJoinTask
                                                                                                                              ForkJoinWorkerThread
                                                                                                                                FutureTask
                                                                                                                                  • + final
                                                                                                                                  • + implements AutoCloseable
                                                                                                                                  Future
                                                                                                                                    java.util.spi
                                                                                                                                      ToolProvider
                                                                                                                                        java.util
                                                                                                                                          • + sealed
                                                                                                                                          HashMap
                                                                                                                                            HashSet
                                                                                                                                              • + sealed
                                                                                                                                              LinkedHashMap
                                                                                                                                                LinkedHashSet
                                                                                                                                                  Locale
                                                                                                                                                    • + deprecated
                                                                                                                                                    • + deprecated
                                                                                                                                                    • + deprecated
                                                                                                                                                    Objects
                                                                                                                                                      Random
                                                                                                                                                        WeakHashMap
                                                                                                                                                          javax.crypto.spec
                                                                                                                                                            OAEPParameterSpec
                                                                                                                                                              • + deprecated
                                                                                                                                                              javax.net.ssl
                                                                                                                                                                KeyManagerFactory
                                                                                                                                                                  • - final
                                                                                                                                                                  SSLHandshakeException
                                                                                                                                                                    SSLKeyException
                                                                                                                                                                      SSLParameters
                                                                                                                                                                        SSLPeerUnverifiedException
                                                                                                                                                                          SSLProtocolException
                                                                                                                                                                            TrustManagerFactory
                                                                                                                                                                              • - final
                                                                                                                                                                              SSLSessionContext
                                                                                                                                                                                • - throws IllegalArgumentException
                                                                                                                                                                                • - throws IllegalArgumentException
                                                                                                                                                                                java.compiler
                                                                                                                                                                                  javax.lang.model.element
                                                                                                                                                                                    ElementKind
                                                                                                                                                                                      javax.lang.model
                                                                                                                                                                                        SourceVersion
                                                                                                                                                                                          java.desktop
                                                                                                                                                                                            java.awt.color
                                                                                                                                                                                              • + final
                                                                                                                                                                                              • + final
                                                                                                                                                                                              • + sealed
                                                                                                                                                                                              java.awt.desktop
                                                                                                                                                                                                • + sealed
                                                                                                                                                                                                • + sealed
                                                                                                                                                                                                java.awt.dnd
                                                                                                                                                                                                  • + final
                                                                                                                                                                                                  java.awt.event
                                                                                                                                                                                                    • + sealed
                                                                                                                                                                                                    java.awt.geom
                                                                                                                                                                                                      CubicCurve2D.Double
                                                                                                                                                                                                        getBounds2D()
                                                                                                                                                                                                        CubicCurve2D.Float
                                                                                                                                                                                                          getBounds2D()
                                                                                                                                                                                                          CubicCurve2D
                                                                                                                                                                                                            • + sealed
                                                                                                                                                                                                            QuadCurve2D.Double
                                                                                                                                                                                                              getBounds2D()
                                                                                                                                                                                                              QuadCurve2D.Float
                                                                                                                                                                                                                getBounds2D()
                                                                                                                                                                                                                QuadCurve2D
                                                                                                                                                                                                                  java.awt
                                                                                                                                                                                                                    • + final
                                                                                                                                                                                                                    • + sealed
                                                                                                                                                                                                                    • + final
                                                                                                                                                                                                                    • + final
                                                                                                                                                                                                                    • + sealed
                                                                                                                                                                                                                    javax.sound.midi
                                                                                                                                                                                                                      • + final
                                                                                                                                                                                                                      javax.swing.plaf.basic
                                                                                                                                                                                                                        BasicDirectoryModel
                                                                                                                                                                                                                          • + forRemoval
                                                                                                                                                                                                                          • + forRemoval
                                                                                                                                                                                                                          • + forRemoval
                                                                                                                                                                                                                          • + forRemoval
                                                                                                                                                                                                                          • + forRemoval
                                                                                                                                                                                                                          • + forRemoval
                                                                                                                                                                                                                          • + forRemoval
                                                                                                                                                                                                                          • + forRemoval
                                                                                                                                                                                                                          • + sealed
                                                                                                                                                                                                                          BasicToolBarUI
                                                                                                                                                                                                                            • + forRemoval
                                                                                                                                                                                                                            javax.swing.text.html
                                                                                                                                                                                                                              • + final
                                                                                                                                                                                                                              • + final
                                                                                                                                                                                                                              • + final
                                                                                                                                                                                                                              javax.swing.text
                                                                                                                                                                                                                                • + final
                                                                                                                                                                                                                                • + final
                                                                                                                                                                                                                                • + final
                                                                                                                                                                                                                                • + final
                                                                                                                                                                                                                                • + sealed
                                                                                                                                                                                                                                javax.swing
                                                                                                                                                                                                                                  • + sealed
                                                                                                                                                                                                                                  • + sealed
                                                                                                                                                                                                                                  • + final
                                                                                                                                                                                                                                  • + final
                                                                                                                                                                                                                                  java.net.http
                                                                                                                                                                                                                                    java.net.http
                                                                                                                                                                                                                                      HttpClient.Builder

                                                                                                                                                                                                                                        This report is based on simple comparison of all public and protected APIs of the java.* and javax.* packages of JDK builds 20-ea+4-158-open and 18.0.1+10-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.