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

New APIs in Java 18

Comparing Java 18 (18.0.1+10-tem) with Java 16 (16.0.2+7-tem).

Element Modification
java.base
    java.io
      CharArrayReader
        • added
        Console
          FileInputStream
            • added
            • added
            InputStreamReader
              • added
              ObjectInputFilter.Config
                ObjectInputStream.GetField
                  • + throws ClassNotFoundException
                  PrintStream
                    WriteAbortedException
                      • + deprecated
                      ObjectInputFilter
                        java.lang.constant
                          • + permitted subclass PrimitiveClassDescImpl
                          • + permitted subclass ReferenceClassDescImpl
                          • + permitted subclass ClassDesc
                          • + permitted subclass Double
                          • + permitted subclass DynamicConstantDesc
                          • + permitted subclass Float
                          • + permitted subclass Integer
                          • + permitted subclass Long
                          • + permitted subclass MethodHandleDesc
                          • + permitted subclass MethodTypeDesc
                          • + permitted subclass String
                          • + permitted subclass DirectMethodHandleDescImpl
                          • + permitted subclass AsTypeMethodHandleDesc
                          • + permitted subclass DirectMethodHandleDesc
                          • + permitted subclass MethodTypeDescImpl
                          java.lang.invoke
                            MethodHandle
                              • + final
                              MethodHandles
                                java.lang.reflect
                                  AccessibleObject
                                    • + deprecated
                                    • + permitted subclass Constructor
                                    • + permitted subclass Method
                                    Method
                                      • - throws IllegalArgumentException
                                      java.lang.runtime
                                        java.lang
                                          Class
                                            • - preview
                                            • - preview
                                            Enum
                                              • + deprecated
                                              • + forRemoval
                                              Math
                                                Object
                                                  • + forRemoval
                                                  Process
                                                    Runtime
                                                      • + deprecated
                                                      • + deprecated
                                                      • + deprecated
                                                      • + deprecated
                                                      • + forRemoval
                                                      • + deprecated
                                                      • + forRemoval
                                                      • + forRemoval
                                                      StrictMath
                                                        System
                                                          • + deprecated
                                                          • + forRemoval
                                                          • + deprecated
                                                          • + forRemoval
                                                          • + deprecated
                                                          • + forRemoval
                                                          ThreadGroup
                                                            • + deprecated
                                                            • + forRemoval
                                                            Thread
                                                              • + deprecated
                                                              • + forRemoval
                                                              • + forRemoval
                                                              java.net.spi
                                                                java.net
                                                                  DatagramSocket
                                                                    • + deprecated
                                                                    ServerSocket
                                                                      • + deprecated
                                                                      Socket
                                                                        • + deprecated
                                                                        URLDecoder
                                                                          URLDecoder()
                                                                          java.nio.charset
                                                                            Charset
                                                                              java.nio
                                                                                MappedByteBuffer
                                                                                  java.security
                                                                                    • + deprecated
                                                                                    • + forRemoval
                                                                                    • + deprecated
                                                                                    • + forRemoval
                                                                                    • + deprecated
                                                                                    • + forRemoval
                                                                                    KeyStoreSpi
                                                                                      KeyStore
                                                                                        • + deprecated
                                                                                        • + forRemoval
                                                                                        • + deprecated
                                                                                        • + forRemoval
                                                                                        • + deprecated
                                                                                        • + forRemoval
                                                                                        • + deprecated
                                                                                        • + forRemoval
                                                                                        java.time
                                                                                          • + implements InstantSource
                                                                                          Duration
                                                                                            java.util.concurrent
                                                                                              Executors
                                                                                                • + deprecated
                                                                                                • + forRemoval
                                                                                                • + deprecated
                                                                                                • + forRemoval
                                                                                                • + deprecated
                                                                                                • + forRemoval
                                                                                                ForkJoinPool
                                                                                                  • added
                                                                                                  • added
                                                                                                  • added
                                                                                                  ThreadLocalRandom
                                                                                                    nextGaussian()
                                                                                                    ThreadPoolExecutor
                                                                                                      • + forRemoval
                                                                                                      java.util
                                                                                                        • + implements RandomGenerator
                                                                                                        • + implements RandomGenerator
                                                                                                        • + implements RandomGenerator.SplittableGenerator
                                                                                                        nextBoolean()
                                                                                                        nextDouble()
                                                                                                        nextDouble(double)
                                                                                                        nextDouble(double, double)
                                                                                                        nextInt(int)
                                                                                                        nextInt(int, int)
                                                                                                        nextLong(long)
                                                                                                        nextLong(long, long)
                                                                                                        Map.Entry
                                                                                                          javax.security.auth
                                                                                                            • + deprecated
                                                                                                            • + forRemoval
                                                                                                            Subject
                                                                                                              • + deprecated
                                                                                                              • + forRemoval
                                                                                                              • + deprecated
                                                                                                              • + forRemoval
                                                                                                              • + deprecated
                                                                                                              • + forRemoval
                                                                                                              • + deprecated
                                                                                                              • + forRemoval
                                                                                                              • + deprecated
                                                                                                              • + forRemoval
                                                                                                              java.compiler
                                                                                                                javax.annotation.processing
                                                                                                                  Messager
                                                                                                                    javax.lang.model.element
                                                                                                                      Modifier
                                                                                                                        • - preview
                                                                                                                        • - preview
                                                                                                                        ExecutableElement
                                                                                                                          TypeElement
                                                                                                                            • - preview
                                                                                                                            javax.lang.model.util
                                                                                                                              Elements
                                                                                                                                javax.lang.model
                                                                                                                                  SourceVersion
                                                                                                                                    javax.tools
                                                                                                                                      ForwardingJavaFileManager
                                                                                                                                        DocumentationTool.Location
                                                                                                                                          JavaFileManager
                                                                                                                                            java.datatransfer
                                                                                                                                              java.awt.datatransfer
                                                                                                                                                DataFlavor
                                                                                                                                                  • + final
                                                                                                                                                  • + final
                                                                                                                                                  • + final
                                                                                                                                                  java.desktop
                                                                                                                                                    java.applet
                                                                                                                                                      • + forRemoval
                                                                                                                                                      • + forRemoval
                                                                                                                                                      • + forRemoval
                                                                                                                                                      • + forRemoval
                                                                                                                                                      java.awt.color
                                                                                                                                                        ICC_Profile
                                                                                                                                                          finalize()
                                                                                                                                                          java.awt.image
                                                                                                                                                            ColorModel
                                                                                                                                                              finalize()
                                                                                                                                                              IndexColorModel
                                                                                                                                                                finalize()
                                                                                                                                                                java.awt
                                                                                                                                                                  Graphics
                                                                                                                                                                    • + forRemoval
                                                                                                                                                                    PrintJob
                                                                                                                                                                      • + forRemoval
                                                                                                                                                                      java.beans
                                                                                                                                                                        Beans
                                                                                                                                                                          • + forRemoval
                                                                                                                                                                          • + forRemoval
                                                                                                                                                                          javax.imageio.spi
                                                                                                                                                                            ServiceRegistry
                                                                                                                                                                              • + forRemoval
                                                                                                                                                                              javax.imageio.stream
                                                                                                                                                                                FileCacheImageInputStream
                                                                                                                                                                                  • + forRemoval
                                                                                                                                                                                  FileImageInputStream
                                                                                                                                                                                    • + forRemoval
                                                                                                                                                                                    FileImageOutputStream
                                                                                                                                                                                      • + forRemoval
                                                                                                                                                                                      ImageInputStreamImpl
                                                                                                                                                                                        • + forRemoval
                                                                                                                                                                                        MemoryCacheImageInputStream
                                                                                                                                                                                          • + forRemoval
                                                                                                                                                                                          javax.swing.filechooser
                                                                                                                                                                                            FileSystemView
                                                                                                                                                                                              javax.swing.plaf.basic
                                                                                                                                                                                                BasicDirectoryModel
                                                                                                                                                                                                  • + deprecated
                                                                                                                                                                                                  • + deprecated
                                                                                                                                                                                                  • + deprecated
                                                                                                                                                                                                  • + deprecated
                                                                                                                                                                                                  • + deprecated
                                                                                                                                                                                                  • + deprecated
                                                                                                                                                                                                  • + deprecated
                                                                                                                                                                                                  • + deprecated
                                                                                                                                                                                                  BasicToolBarUI
                                                                                                                                                                                                    • + deprecated
                                                                                                                                                                                                    javax.swing
                                                                                                                                                                                                      • + forRemoval
                                                                                                                                                                                                      • + implements AccessibleAction
                                                                                                                                                                                                      RepaintManager
                                                                                                                                                                                                        • + forRemoval
                                                                                                                                                                                                        java.logging
                                                                                                                                                                                                          java.util.logging
                                                                                                                                                                                                            LogManager
                                                                                                                                                                                                              • + deprecated
                                                                                                                                                                                                              • + forRemoval
                                                                                                                                                                                                              java.management
                                                                                                                                                                                                                java.lang.management
                                                                                                                                                                                                                  MemoryMXBean
                                                                                                                                                                                                                    • + deprecated
                                                                                                                                                                                                                    java.naming
                                                                                                                                                                                                                      javax.naming
                                                                                                                                                                                                                        Context
                                                                                                                                                                                                                          • + forRemoval
                                                                                                                                                                                                                          java.net.http
                                                                                                                                                                                                                            java.net.http
                                                                                                                                                                                                                              HttpRequest.Builder
                                                                                                                                                                                                                                java.rmi
                                                                                                                                                                                                                                  java.rmi.activation
                                                                                                                                                                                                                                  java.rmi
                                                                                                                                                                                                                                    • + forRemoval
                                                                                                                                                                                                                                    java.xml.crypto
                                                                                                                                                                                                                                      javax.xml.crypto.dsig.spec
                                                                                                                                                                                                                                        javax.xml.crypto.dsig
                                                                                                                                                                                                                                          SignatureMethod
                                                                                                                                                                                                                                            java.xml
                                                                                                                                                                                                                                              javax.xml.xpath
                                                                                                                                                                                                                                                XPathFactory

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