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

New APIs in Java 23

Comparing Java 23 (23-ea+26-2269-open) with Java 22 (22.0.1+8-tem).

Element Modification
java.base
    java.io
      Console
        ObjectOutputStream.PutField
          • + forRemoval
          java.lang.classfile.constantpool
            ConstantPool
              java.lang.classfile
                • + final
                ANNOTATION_DEFAULT
                BOOTSTRAP_METHODS
                CHARACTER_RANGE_TABLE
                CODE
                COMPILATION_ID
                CONSTANT_VALUE
                DEPRECATED
                ENCLOSING_METHOD
                EXCEPTIONS
                INNER_CLASSES
                LINE_NUMBER_TABLE
                LOCAL_VARIABLE_TABLE
                LOCAL_VARIABLE_TYPE_TABLE
                METHOD_PARAMETERS
                MODULE
                MODULE_HASHES
                MODULE_MAIN_CLASS
                MODULE_PACKAGES
                MODULE_RESOLUTION
                MODULE_TARGET
                NEST_HOST
                NEST_MEMBERS
                PERMITTED_SUBCLASSES
                PREDEFINED_ATTRIBUTES
                RECORD
                RUNTIME_INVISIBLE_ANNOTATIONS
                RUNTIME_INVISIBLE_PARAMETER_ANNOTATIONS
                RUNTIME_INVISIBLE_TYPE_ANNOTATIONS
                RUNTIME_VISIBLE_ANNOTATIONS
                RUNTIME_VISIBLE_PARAMETER_ANNOTATIONS
                RUNTIME_VISIBLE_TYPE_ANNOTATIONS
                SIGNATURE
                SOURCE_DEBUG_EXTENSION
                SOURCE_FILE
                SOURCE_ID
                STACK_MAP_TABLE
                SYNTHETIC
                standardAttribute(Utf8Entry)
                Signature.TypeArg.WildcardIndicator
                TypeKind
                  fromNewArrayCode(int)
                  newarraycode()
                  BufWriter
                    asByteBuffer()
                    ClassFile
                      ClassReader
                        skipAttributeHolder(int)
                        thisClassPos()
                        utf8EntryByIndex(int)
                        ClassSignature
                          of(List, Signature.RefTypeSig,...
                          of(Signature.RefTypeSig, Signature.RefTypeSig...)
                          superclassSignature()
                          CodeBuilder
                            arrayLoadInstruction(TypeKind)
                            arrayStoreInstruction(TypeKind)
                            branchInstruction(Opcode, Label)
                            constantInstruction(ConstantDesc)
                            constantInstruction(Opcode, ConstantDesc)
                            convertInstruction(TypeKind, TypeKind)
                            fieldInstruction(Opcode, ClassDesc, String,...
                            fieldInstruction(Opcode, FieldRefEntry)
                            incrementInstruction(int, int)
                            instanceof_(ClassDesc)
                            instanceof_(ClassEntry)
                            invokeDynamicInstruction(DynamicCallSiteDesc)
                            invokeDynamicInstruction(InvokeDynamicEntry)
                            invokeInstruction(Opcode, ClassDesc, String,...
                            invokeInstruction(Opcode, MemberRefEntry)
                            loadInstruction(TypeKind, int)
                            lookupSwitchInstruction(Label, List)
                            monitorInstruction(Opcode)
                            newMultidimensionalArrayInstruction(int,...
                            newMultidimensionalArrayInstruction(int,...
                            newObjectInstruction(ClassDesc)
                            newObjectInstruction(ClassEntry)
                            newPrimitiveArrayInstruction(TypeKind)
                            newReferenceArrayInstruction(ClassDesc)
                            newReferenceArrayInstruction(ClassEntry)
                            nopInstruction()
                            operatorInstruction(Opcode)
                            returnInstruction(TypeKind)
                            stackInstruction(Opcode)
                            storeInstruction(TypeKind, int)
                            tableSwitchInstruction(int, int, Label, List)
                            throwInstruction()
                            typeCheckInstruction(Opcode, ClassDesc)
                            typeCheckInstruction(Opcode, ClassEntry)
                            Signature.TypeArg
                              boundType()
                              extendsOf(Signature.RefTypeSig)
                              of(Signature.RefTypeSig)
                              of(Signature.TypeArg.WildcardIndicator, Optional)
                              superOf(Signature.RefTypeSig)
                              unbounded()
                              wildcardIndicator()
                              java.lang.foreign
                                MemorySegment
                                  SymbolLookup
                                    java.lang.invoke
                                      StringConcatFactory
                                        MAX_INDY_CONCAT_ARG_SLOTS
                                        makeConcatWithTemplate(List, List)
                                        makeConcatWithTemplateCluster(List, List, int)
                                        makeConcatWithTemplateGetters(List, List, int)
                                        java.lang.reflect
                                          ClassFileFormatVersion
                                            java.lang.runtime
                                              TemplateRuntime
                                              java.lang
                                                ScopedValue.Carrier
                                                  call(Callable)
                                                  get(Supplier)
                                                  ScopedValue
                                                    callWhere(ScopedValue, Object, Callable)
                                                    getWhere(ScopedValue, Object, Supplier)
                                                    ThreadGroup
                                                      resume()
                                                      stop()
                                                      suspend()
                                                      Thread
                                                        resume()
                                                        suspend()
                                                        StringTemplate.Processor.Linkage
                                                        StringTemplate.Processor
                                                        StringTemplate
                                                        java.net
                                                          DatagramSocketImpl
                                                            • + forRemoval
                                                            • + forRemoval
                                                            Inet4Address
                                                              MulticastSocket
                                                                • + forRemoval
                                                                • + forRemoval
                                                                • + forRemoval
                                                                Socket
                                                                  • + forRemoval
                                                                  • + forRemoval
                                                                  java.text
                                                                    ChoiceFormat
                                                                      CompactNumberFormat
                                                                        DecimalFormat
                                                                          MessageFormat
                                                                            NumberFormat
                                                                              SimpleDateFormat
                                                                                java.time
                                                                                  Instant
                                                                                    java.util.zip
                                                                                      Deflater
                                                                                        • + deprecated
                                                                                        • + deprecated
                                                                                        Inflater
                                                                                          • + deprecated
                                                                                          • + deprecated
                                                                                          ZipFile
                                                                                            java.util
                                                                                              FormatProcessor
                                                                                              java.compiler
                                                                                                javax.lang.model.util
                                                                                                  Elements
                                                                                                    Types
                                                                                                      javax.lang.model
                                                                                                        SourceVersion
                                                                                                          javax.tools
                                                                                                            SimpleJavaFileObject
                                                                                                              java.desktop
                                                                                                                java.beans.beancontext
                                                                                                                  • + deprecated
                                                                                                                  • + forRemoval
                                                                                                                  • + deprecated
                                                                                                                  • + forRemoval
                                                                                                                  • + deprecated
                                                                                                                  • + forRemoval
                                                                                                                  • + deprecated
                                                                                                                  • + forRemoval
                                                                                                                  • + deprecated
                                                                                                                  • + forRemoval
                                                                                                                  • + deprecated
                                                                                                                  • + forRemoval
                                                                                                                  • + deprecated
                                                                                                                  • + forRemoval
                                                                                                                  • + deprecated
                                                                                                                  • + forRemoval
                                                                                                                  • + deprecated
                                                                                                                  • + forRemoval
                                                                                                                  • + deprecated
                                                                                                                  • + forRemoval
                                                                                                                  • + deprecated
                                                                                                                  • + forRemoval
                                                                                                                  • + deprecated
                                                                                                                  • + forRemoval
                                                                                                                  • + deprecated
                                                                                                                  • + forRemoval
                                                                                                                  • + deprecated
                                                                                                                  • + forRemoval
                                                                                                                  • + deprecated
                                                                                                                  • + forRemoval
                                                                                                                  • + deprecated
                                                                                                                  • + forRemoval
                                                                                                                  • + deprecated
                                                                                                                  • + forRemoval
                                                                                                                  • + deprecated
                                                                                                                  • + forRemoval
                                                                                                                  java.beans
                                                                                                                    Beans
                                                                                                                      • + deprecated
                                                                                                                      • + forRemoval
                                                                                                                      javax.print.attribute.standard
                                                                                                                        javax.swing.plaf.synth
                                                                                                                          SynthTreeUI
                                                                                                                            javax.swing
                                                                                                                              JScrollBar
                                                                                                                                java.management.rmi
                                                                                                                                  javax.management.remote.rmi
                                                                                                                                    RMIConnector
                                                                                                                                      getMBeanServerConnection(Subject)
                                                                                                                                      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+26-2269-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.